tecstock.com
Formula Help
Formula Guide
Enter Symbols:  

Scan Descriptions

BASIC_COND

TecStock.com utilizes a basic condition to only consider stocks that are closed above $0.30 and have more than 20,000 trading volume per day for the last 20 days. Stocks traded below this level tend to produce a high degree of misleading scan signals, which simply results in a waste of trader's time.

The basic condition is represented by the following formula:

# basic_cond
m := 20;    # one month
cond1 := every(vol >= 20000, m);
cond2 := close > 0.3;
cond1 and cond2;


New 52 Week High / New 52 Week Low

This scan identifies stocks which closed at new highs/lows with respect to the price range of the last 52 weeks.

The new 52 week high or low pattern does not suggest any particular trading strategy. It simply indicates that the price breaks into new trading area. While a new high with high volume may imply an exhaustion peak, a repeated new high could signal a bullish momentum play.

Signals of new 52 week high and low are generated by the following formula

signal_new_52_week_high :  high = hhv(high, 250) and "basic_cond";
signal_new_52_week_low : low = llv(low, 250) and "basic_cond";


MA50 MA200 Crossover

The crossover of the 50-day moving average (MA50) and the 200-day moving average (MA200) is an important trading signal for institutional investors. When the MA50 crosses above the MA200, it is called a "golden cross". When the MA50 crosses below the MA200, it is called a "death cross".

This scan generates two kinds of signals: ma50_ma200_cross_up and ma50_ma200_cross_down, depending on whether the MA50 and MA200 are forming a golden cross or a death cross.

ma50 := ma(close, 50);
ma200 := ma(close, 200);
signal_ma50_ma200_cross_up : cross(ma50, ma200) and "basic_cond";
signal_ma50_ma200_cross_down : cross(ma200, ma50) and "basic_cond";


Gap

  • Gap Up - Stocks with a low price which is at least 2% higher than its previous day's high price.
  • Gap Down - Stocks with a high price which is at least 2% lower than its previous day's low price.


Breakaway Gap

  • Breakaway Gap Up - Stocks which were steadily traded recently gapped up today with a low price higher than the recent one-month high and a volume three times larger than its 5- and 60-day simple moving averages.
  • Breakaway Gap Down - Stocks which were steadily traded recently gapped down today with a high price lower than the recent one-month low.


Island Reversal

An island reversal is a pattern consisting of two gaps in opposite directions. An island top is formed when prices gap up after an extended advance, trade one or more days leaving the gap open, and then gap down. Similarly, an island bottom is formed when prices gap down after an extended decline, trade one or more days leaving the gap open, and then gap up.

Island reversals are often news driven and usually occur because conflicting news events occur within short time frames. Island reversals are "trend killers" and usually lead to the formation of large patterns that follow the trend.

The signals are most reliable if they occur after a strong trend. If the trend is weak, so is the signal.

M := 20;
hhv1M := hhv(high, M);
llv1M := llv(low, M);
hhv6M := hhv(high, 6*M);
llv6M := llv(low, 6*M);
gap_up2       := low / ref(high, 1) - 1 >= 0.01;
gap_down2     := high / ref(low, 1) - 1 <= -0.01;
gap_up1       := low > ref(hhv1M, 1) and gap_up2;
gap_down1     := high < ref(llv1M, 1) and gap_down2;
d_up          := barslast(gap_up1);
d_down        := barslast(gap_down1);
hhv_high_up   := hhv(ref(high, 1), d_up);
llv_low_up    := llv(ref(low, 1), d_up);
hhv_high_down := hhv(ref(high, 1), d_down);
llv_low_down  := llv(ref(low, 1), d_down);

cond1 := d_up > 0 and d_up <= M and
         hhv_high_up = hhv6M and
         llv_low_up > ref(hhv1M, d_up+1) and
         gap_down2 and high < llv_low_up;

cond2 := d_down > 0 and d_down <= M and
         llv_low_down = llv6M and
         hhv_high_down < ref(llv1M, d_down+1) and
         gap_up2 and low > hhv_high_down;

bcond := "basic_cond";
signal_island_top : cond1 and bcond;
signal_island_bottom : cond2 and bcond;


Volume Spike

Volume spikes are relatively large volumes which exceed normal volume multiple times. We use the following formula to define a volume spike:

cond : vol > 3*ref(vol, 1) and
vol > 3*ref(ma(vol, 50), 1);
signal_volume_spike : cond and "basic_cond";

i.e., a volume spike signal occurs when the volume is at least 3 times larger than its yesterday's value and at least 3 times larger than its yesterday's 50-day simple moving averages of volume. A volume spike is therefore visually unmistakable in a chart.

Volume spikes are usually caused by news, for instance, lower- or higher-than-expected consensus earnings, analyst up or downgrades etc. It is, however, not uncommon that volume spikes occur without any news. This is often the result of heavy activities of market makers or of people knowing internal news and is therefore worth paying close attention to.


Highest Volume

Stocks displaying the highest volume ever seen are often where the real excitement of the day lies. These extreme volume levels indicate unusual levels of supply or demand. Moves on volume well above average can often ignite further supply or demand, and at times, can lead to continued price action over the coming days and weeks. But keep an eye out for non-supply/demand driven sources of high volume, such as secondary offerings.

The formula used for this scan is:

cond := vol = hhv(vol, 0);
signal_highest_volume: cond and "basic_cond";


RSI divergence

The RSI, or Relative Strength Index, is a momentum oscillator introduced by Welles Wilder. It is going up when the market is strong, and down, when the market is weak. The oscillation range is between 0 and 100.

The RSI divergence identifies stocks that display a peak-to-peak divergence between price and RSI.

A bearish RSI divergence signal occurs when a stock or index makes a higher high in price than at its last peak while the RSI forms a peak lower than its previous peak.

A bullish RSI divergence signal occurs when the opposite is true: price traces a lower low while the RSI traces a higher low.

"When divergence begins to show up after a good directional move, this is a very strong indication that a turning point is near. divergence is the single most indicative characteristic of the relative strength line."

The signal quality of the RSI divergence is ranked by the sum of percentage changes between price peaks/troughs and rsi peaks/troughs. The higher the number, the more divergent the price and RSI have become.

What follows is the formula used to identify bearish rsi divergence signals:

bcond := "basic_cond";
rsi := "RSI"(14);
price1 := high;
price2 := low;
n1 := 10; n2 := 5; 

peak1 := hhvbars(price1, 50) = n1 and ref("trend.up"(5, 20, 10, 0.8), n1);
peak1days := barslast(peak1) + n1; 
peak1price := ref(price1, peak1days);
peak1rsi := ref(rsi, peak1days);

peak2 := hhvbars(price1, 50) = n2 and
         between(peak1days, 20, 50) and
         ref("trend.up"(5, 10, 3, 0.75), n2);
peak2days := barslast(peak2) + n2;  
peak2price := ref(price1, peak2days);
peak2rsi := ref(rsi, peak2days);
cond1 := peak2 and peak2price / peak1price > 1.03 and
         peak2rsi + 3 < peak1rsi and
         peak1rsi > 70 and peak2rsi < 70;
signal_rsi_divergence_bearish: cond1 and bcond;

The bullish rsi divergence formula is very similar:

trough1 := llvbars(price2, 50) = n1 and ref("trend.down"(5, 20, 10, 0.8), n1);
trough1days := barslast(trough1) + n1; 
trough1price := ref(price2, trough1days);
trough1rsi := ref(rsi, trough1days);
trough2 := llvbars(price2, 50) = n2 and
           between(trough1days, 20, 50) and
           ref("trend.down"(5, 10, 3, 0.75), n2);
trough2days := barslast(trough2) + n2;  
trough2price := ref(price2, trough2days);
trough2rsi := ref(rsi, trough2days);

cond2 := trough2 and trough1price / trough2price > 1.03 and
         trough2rsi > trough1rsi + 3 and
         trough1rsi < 30 and trough2rsi > 30;

signal_rsi_divergence_bullish: cond2 and bcond;


Double Top

The double top is a major reversal pattern that forms after an extended uptrend. The pattern is made up of two consecutive peaks that are roughly at the same price level, with a moderate trough in between. The duration of the interval between the two tops is called the size of the pattern, while the horizontal line passing through the bottom of the trough is called the neck line. A double top is only complete, when the price declines below the neck line.

The double top is sometimes called an "M" formation because of the pattern it creates on the chart.

The formula used to identify the double top is listed below. It generates signals only when the price crosses below the neck line.

Some analysts suggest that the size of the double top should be at least one month and the price decline between the tops should be at least 15%. In our formula, we specify that the size is between 15 to 50 days and the price decline is more than 10%. The formula does not generate many signals as other formulas do. If you would like to see more signals, you can loosen conditions by changing the size to 10+ days and the decline to 5%+. Signals generated under these conditions are still highly reliable when the whole market is in the process of becoming an downtrend.

top := max(open, close);
bot := min(open, close);
price := top; 
peak1 := price = hhv(price, 60) and "trend.up"(5, 20, 15, 0.85);
peak1days := barslast(peak1);
peak1price := ref(price, peak1days);
peak2 := between(peak1days, 15, 50) and
         max(peak1price, price) >= hhv(price, peak1days) and
         abs(peak1price-price)/peak1price < 0.03 and
         peak1price/llv(price, peak1days) - 1 > 0.1;
peak2days := barslast(peak2);
peak2price := ref(price, peak2days);
neck : ref(llv(bot, peak1days - peak2days), peak2days);
dtop := peak1days > peak2days and
        between(peak2days, 1, 15) and
        peak2price > hhv(price, peak2days) and 
        cross(neck, close);
signal_double_top: dtop and "basic_cond";


Double Bottom The double bottom is a major reversal pattern that forms after an extended downtrend. The pattern is made up of two consecutive troughs that are roughly at the same price level, with a moderate peak in between. The duration of the interval between the two bottoms is called the size of the pattern, while the horizontal line passing through the top of the peak is called the neck line. A double bottom is only complete, when the price advances above the neck line.

The double bottom is sometimes called an "W" formation because of the pattern it creates on the chart.

The formula used to identify the double bottom is listed below. It generates signals only when the price crosses above the neck line.

Some analysts suggest that the size of the double bottom should be at least one month and the price advance between the bottoms should be at least 15%. In our formula, we specify that the size is between 15 to 50 days and the price advance is more than 10%. The formula does not generate many signals as other formulas do. If you would like to see more signals, you can loosen conditions by changing the size to 10+ days and the advance to 5%+. Signals generated under these conditions are still highly reliable when the whole market is in the process of becoming an uptrend.

top := max(open, close);
bot := min(open, close);
price := bot;
trough1 := price = llv(price, 60) and "trend.down"(5, 20, 15, 0.85);
trough1days := barslast(trough1); 
trough1price := ref(price, trough1days);
trough2 := between(trough1days, 15, 50) and
           min(trough1price, price) <= llv(price, trough1days) and
           abs(trough1price-price)/trough1price < 0.03 and
           hhv(price, trough1days)/trough1price - 1 > 0.1;
trough2days := barslast(trough2);
trough2price := ref(price, trough2days);
neck : ref(hhv(top, trough1days - trough2days), trough2days);
dbot := trough1days > trough2days and
        between(trough2days, 1, 15) and
        trough2price < llv(price, trough2days) and
        cross(close, neck);
signal_double_bottom: dbot and "basic_cond";


NR7

NR7, or Narrow Range 7, is a pattern referring to the daily price range being narrower than that for each of the preceding six days.

The NR7 pattern shows up when a stock's price shows a short-term pattern of decreasing volatility. In this way NR7 is like a triangle chart pattern, but with more emphasis on the volatility, and less emphasis on the specific shape or direction.

While the NR7 pattern often precedes a day of sharp price movement, it does not, by itself, predict which direction a stock will move. People use it to predict which stocks are likely to make a large price move.

NR7 is identified by the following formula. By changing the value of N to 5 or 6, you can easily use the formula to screen your own NR5 or NR6 patterns.

N := 7;
range := high -low;
cond := every(range < ref(range, 1), N-1);
signal_nr7 := cond and "basic_cond";


TAIL

A tail, also commonly known as a shooting star, hammer, or finger, is a single bar price formation displaying a larger than average high to low range, but a tight open to close range, which lies near either the top or bottom of the daily range, making the tail 'point' downward or upward, respectively. Higher than average volume is desired for a quality tail formation.

Tail patterns that occur after a long rally or fall that point in the direction of the trend often mark turning points. The tail pushes into at-least-recently uncharted territory, exhausts the trend and reverses, leading to a trend reversal. The odds for a turning point being marked by a tail may be increased if the tail pokes through any major support or resistance. However, a tail that prints early in a trend is often simply paving the way for continued price expansion. It is also common to see price action following a reversal tail to behave as expected for one to two days, but then to see the tail taken out with a continuation of the original trend. Thus, trading tail patterns are not without challenges.

We identify tail patterns using the following formula:

range := high - low;
rank  := vol / ref(ma(vol, 50), 1);
cond  := range = hhv(range, 20) and
         (high = hhv(high, 40) or low = llv(low, 40)) and
         (range > 3*(max(open, close) - low) or
         range > 3*(high-min(open,close))) and
         rank > 1;
signal_tail: cond and "basic_cond";


HITW

HITW, or Hole-In-The-Wall, refers to a downward price gap that marks the end of a major rally.

HITW's can act as a shock event, possessing the ability to initiate a down-trend from a prior up-trend. The level of shock, and perhaps the likelihood of a HITW successfully marking the top, may be quantified by the size of the gap, how far the gap bar fell, its participation (volume), and the strength of the preceding rally. As such, this indicator is typically used to identify potential shorting opportunities.

We identify HITW using the following formula:

range := high - low;
days:= barslast(high = hhv(high, 40) and "trend.up"(5, 20, 10, 0.85));
cond := days < 3 and
        high < ref(low, 1) and
        range > ma(range, 10) and
        isdown;
signal_hitw : cond and "basic_cond";


Patterns:
Dark Cloud Cover

This is a two-candlestick pattern signaling a top reversal after an uptrend. We see a strong white real body in the first day. The next day opens strongly above the previous close, makes a new high, and closes less than halfway into the prior white candlestick's real body.

The dark cloud cover pattern occurs when the bulls can not continue the uptrend and start losing control. Investors are dumping at the top to lock their gains, short sellers take over the control and pull the price down.

 

range := high - low;
long_body := range > ma(range, 10);
cond := ref(isup, 1) and
        ref(long_body, 1) and
        open > ref(close, 1) and
        close < ref((close +open)/2, 1) and
        high = hhv(high, 30) and
        "trend.up"(5, 20, 10, 0.7);
signal_dark_cloud_cover : cond and "basic_cond"; 


Engulfing

The engulfing pattern includes the bullish and bearish engulfing patterns.  A bearish engulfing pattern is a large black candlestick that features an opening price above the prior day's high and a closing price below the prior day's low. As such, the body of the pattern "engulfs" the prior day's range. A bearish engulfing pattern is an major top reversal signal.

The bullish engulfing pattern is similar, but in the opposite direction: it opens below the prior day's low and closes above the prior day's high. A bullish engulfing pattern is an major bottom reversal signal.

 

top := max(open, close);
bot := min(open, close);
engulf := ref(high, 1) < top and ref(low, 1) > bot;
cond1 := engulf and ref(isdown, 1) and isup and "trend.down"(5, 20, 10, 0.8);
cond2 := engulf and ref(isup, 1) and isdown and "trend.up"(5, 20, 10, 0.8);
signal_bullish_engulfing : cond1 and "basic_cond";
signal_bearish_engulfing : cond2 and "basic_cond";


Evening Star

The evening star is a major top reversal pattern formed by three candlesticks:

  • a long-bodied white candle extending the current uptrend,

  • a short middle candle that gaped up on the open,

  • and a long-bodied black candle that gaped down on the open and closed below the close of the first day.

The first long white candle shows the continuing bullish nature of the market. Then the short middle candle appears showing the diminishing power of the longs. The last long black candle proves that bears have taken over the control.
top := max(open, close);
bot := min(open, close);
range := top - bot;
range_ma := ma(range, 10);
cond := ref(isup, 2) and
        ref(range > range_ma, 2) and
        ref(bot, 1) > ref(top, 2) and
        ref(range < range_ma/2, 1) and
        isdown and
        range > range_ma and
        open > ref(open, 2) and
        close < ref(close, 2) and
        ref("trend.up"(5, 20, 10, 0.75), 2);
signal_evening_star : cond and "basic_cond";


Falling Three Methods

This is a bearish continuation pattern representing a temporary break in the downtrend of prices without causing a reversal. It consists of a long black candlestick, three small bodies in three consecutive days, with each closing within the range of the 1st day, and a long black day that closes below the 1st day's close. The three small candles between the two long black days shows a short market break and after that, the bearish trend continues.

The Bearish Falling Three Methods Pattern is a continuation pattern marked with a temporary break in the overall trend of prices without causing a reversal. The temporary break shows that there is some doubt about the ability of the trend to continue. This doubt increases as the small-range reaction days take place. However, given the fact that a new high cannot be made, the bearishness is resumed and new lows are set quickly.

range := high - low;
long_black_body := isdown and range > ma(range, 10);
cond := ref(long_black_body, 4) and
        ref(high, 1) < ref(high, 4) and
        ref(high, 2) < ref(high, 4) and
        ref(high, 3) < ref(high, 4) and
        ref(low, 1) > ref(low, 4) and
        ref(low, 2) > ref(low, 4) and
        ref(low, 3) > ref(low, 4) and
        low = llv(low, 30) and
        close = llv(close, 30) and
        open < ref(close, 1) and
        ref("trend.down"(5, 5, 3, 0.7), 4);
signal_falling_three_methods : cond and "basic_cond";


Harami

The harami pattern includes the bullish and bearish harami patterns.

The bearish harami pattern is composed of a small black real body contained within a prior relatively long white real body, while the bull harami pattern is composed of a small white real body contained within a prior relatively long black real body.

The Bearish Harami Pattern is a sign of a disparity about the market's health. Bull market continues further confirmed by the long white real body's vitality but then a small black real body which shows some uncertainty. This shows the bulls' upward drive has weakened and now a trend reversal is possible.

The Bullish Harami Pattern is a sign of disparity about the market's health. While the market is characterized by downtrend and bearish mood; there is heavy selling reflected by a long, black real body however it is followed by a small white body in the next day. This may signal a trend reversal since the second day's small real body shows that the bearish power is diminishing.

range := high - low;
top := max(open, close);
bot := min(open, close);
sign := sgn(close-open);
harami := high < ref(top, 1) and
          low > ref(bot, 1) and
          ref(sign, 1) * sign = -1 and
          ref(range > ma(range, 10), 1);
cond1 := harami and ref(low, 1) = llv(low, 30) and
			ref(isdown,1) and ref("trend.down"(5, 20, 10, 0.9), 1);
cond2 := harami and ref(high, 1) = hhv(high, 30) and
         ref(isup,1) and ref("trend.up"(5, 20, 10, 0.9), 1);
bcond := "basic_cond";
signal_harami_bullish : cond1 and bcond; 
signal_harami_bearish : cond2 and bcond;


Morning Star

The morning star is a major bottom reversal pattern formed by three-candlestick:

  • a long-bodied red candle extending the current downtrend,

  • a short middle candle that gaped down on the open,

  • and a long-bodied white candle that gaped up on the open and closed above the close of the first day.

The first long black candle shows the continuing bearish nature of the market. Then the short middle candle appears implying the incapacity of sellers to drive the market lower. The last long white candle shows that the market turned bullish now.
top := max(open, close);
bot := min(open, close);
range := top - bot;
range_ma := ma(range, 10);
cond := ref(isdown, 2) and
        ref(range > range_ma, 2) and
        ref(top, 1) < ref(bot, 2) and
        ref(range < range_ma/2, 1) and
        isup and
        range > range_ma and
        open < ref(open, 2) and
        close > ref(close, 2) and
        ref("trend.down"(5, 20, 10, 0.75), 2);
signal_morning_star : cond and "basic_cond";


Piercing Line

This is a two-candlestick pattern signaling a bottom reversal after an downtrend. We see a strong black real body in the first day. The next day opens below the previous close, makes a new low, and closes more than halfway into the prior black candlestick's real body.

The piercing line pattern shows when the downtrand exhausts and bears can no more retain their control. Potential buyers start thinking that the market has touched its bottom and taking long positions.

range := high - low;
long_body := range > ma(range, 10);
cond := ref(isdown, 1) and
        ref(long_body, 1) and
        open < ref(close, 1) and
        close > ref((close +open)/2, 1) and
        low = llv(low, 30) and
        "trend.down"(5, 20, 10, 0.7);
signal_piercing_line : cond and "basic_cond";


Rising Three Methods

This is a bullish continuation pattern representing a pause during a uptrend without causing a reversal. It consists of a long white candlestick, three small bodies in three consecutive days, with each closing within the range of the 1st day, and a long white day that closes above the 1st day's close. The three small candles between the two long white candlesticks represent a break during the uptrend. The upward trend then resumes and continues.

The Bullish Rising Three Methods Pattern typically represents a rest in the market action. This may be used to add new positions by longs. The pattern is the reflection of doubts about the ability of the trend to continue. This doubt may increase because of small-range reaction days. However, given the fact that a new low cannot be made, the bullishness is resumed and new highs are set quickly.

range := high - low;
long_white_body := isup and range > ma(range, 10);
cond := ref(long_white_body, 4) and
        ref(high, 1) < ref(high, 4) and
        ref(high, 2) < ref(high, 4) and
        ref(high, 3) < ref(high, 4) and
        ref(low, 1) > ref(low, 4) and
        ref(low, 2) > ref(low, 4) and
        ref(low, 3) > ref(low, 4) and
        high = hhv(high, 30) and
        close = hhv(close, 30) and
        open > ref(close, 1) and
        ref("trend.up"(5, 5, 3, 0.7), 4);
signal_rising_three_methods : cond and "basic_cond";


Shooting Star

Bearish Shooting Star Pattern suggests that prices may be approaching to a top. It looks like its name, a shooting star. The shooting star is a small real body characterized by a long upper shadow, which gaps away from the prior real body.

The Shooting Star simply tells us that the market opened near its low, then prices strongly rallied up and finally prices moved down to close near the opening price. In other words, the rally of the day was not sustained.

A single day bearish pattern that can appear in an uptrend. It opens higher, trades much higher, then closes near its open.

 

range := high - low;
cond := min(open, close) = low and
        high - low > 3.5*(max(open, close) - low) and
        open != close and
        range > ma(range, 10) and
        high = hhv(high, 30) and
       "trend.up"(5, 20, 10, 0.75);
signal_shooting_star : cond and "basic_cond";


Spinning Top

A spinning top is a single day pattern that has a small body with long up and bottom shadows.

Spinning tops indicate the uncertainty and indecision in a market. Investors have difficulty coming to a consensus on a security's value. Neither the buyers nor the sellers have a clear sense of which direction the market will head. The forces of supply and demand are equally balanced.

A spinning top with high volume is a sign of that there is an active tug of war between the bulls and the bears and the market is confused about the direction prices are headed.

When spinning tops show up after a long rally with high volume, it often signals an exhausted up-going trend.

top := max(close, open);
bot := min(close, open);
range := top - bot;
spinning_top := range != 0 and
                range < ma(range, 10) / 2 and
                (high-top) > range and
                (bot-low) > range;
cond1 := spinning_top and (high = hhv(high, 40)) and "trend.up"(5, 20, 10, 0.8);
cond2 := spinning_top and (low = llv(low, 40)) and "trend.down"(5, 20, 10, 0.8);
bcond := "basic_cond";
signal_spinning_top_bearish : cond1 and bcond; 
signal_spinning_top_bullish : cond2 and bcond;


Three Black Crows

The three black crows pattern signaling a top reversal after an uptrend. It is consisting of three consecutive black bodies where each day closes near below the previous low, and opens within the body of the previous day.

The Bearish Three Black Crows Pattern is indicative of the fact that the market has been at a high price for too long and the market may be approaching a top or is already at the top. A decisive downward move is reflected by the first black candlestick. The next two days show further decline in prices due to profit taking. Bullish mood of the market cannot be sustained anymore.

range := high - low;
range_ma := ma(range, 10);
black_body := isdown and between(range, range_ma*0.3, range_ma*1.0);
var1 := between(open, ref(open, 1), ref(close, 1)) and
        close < ref(close, 1);
cond := every(black_body, 3) and
        every(var1, 2) and
        ref("trend.up"(5, 20, 10, 0.7), 3);
signal_three_black_crows : cond and "basic_cond";


Three White Soldiers

Bullish Three White Soldiers Pattern is indicative of a strong reversal in the market. It is characterized by three long candlesticks stepping upward like a staircase. The opening of each day is slightly lower than previous close rallying then to a short term high.

The Bullish Three White Soldiers Pattern appears in a context where the market stayed at a low price for too long. The market is still falling down and it is now approaching a bottom or already at bottom. Then we see a decisive attempt upward shown by the long white candlestick. Rally continues in the next two days characterized by higher closes. Bears are now forced to cover short positions.

range := high - low;
range_ma := ma(range, 10);
white_body := isup and between(range, range_ma*0.3, range_ma*1.0);
var1 := between(open, ref(open, 1), ref(close, 1)) and
        close > ref(close, 1);
        cond := every(white_body, 3) and
        every(var1, 2) and
        ref("trend.down"(5, 20, 10, 0.7), 3);
signal_three_white_soldiers : cond and "basic_cond";


 

 
©2019 www.TecStock.com