ATR Trailing Stop Topic Rating:
 Previous Topic · Next Topic Watch this topic · Print this topic ·
ccsjeba
 Posted : Wednesday, March 13, 2013 5:25:30 PM
Registered User
Joined: 5/7/2011
Posts: 13

Hello,

I am using the below in ThinkorSwim to plot the ATR Trailing Stop. Is there anyway I can convert this to StockFinder?

___________________________________
input trailType = {default modified, unmodified};
input ATRPeriod = 5;
input ATRFactor = 3.5;
input firstTrade = {default long, short};

assert(ATRFactor > 0, "'atr factor' must be positive: " + ATRFactor);

def HiLo = Min(high - low, 1.5 * Average(high - low, ATRPeriod));
def HRef = if low <= high[1]
then high - close[1]
else (high - close[1]) - 0.5 * (low - high[1]);
def LRef = if high >= low[1]
then close[1] - low
else (close[1] - low) - 0.5 * (low[1] - high);
def ATRMod = ExpAverage(Max(HiLo, Max(HRef, LRef)), 2 * ATRPeriod - 1);

def loss;
switch (trailType) {
case modified:
loss = ATRFactor * ATRMod;
case unmodified:
loss = ATRFactor * AvgTrueRange(high, close, low, ATRPeriod);
}

rec state = {default init, long, short};
rec trail;
switch (state[1]) {
case init:
if (!IsNaN(loss)) {
case long:
state = state.long;
trail =  close - loss;
case short:
state = state.short;
trail = close + loss;
}
} else {
state = state.init;
trail = Double.NaN;
}
case long:
if (close > trail[1]) {
state = state.long;
trail = Max(trail[1], close - loss);
}
else {
state = state.short;
trail = close + loss;
}
case short:
if (close < trail[1]) {
state = state.short;
trail = Min(trail[1], close + loss);
}
else {
state = state.long;
trail =  close - loss;
}
}

def BuySignal = Crosses(state == state.long, 0, CrossingDirection.Above);
def SellSignal = Crosses(state == state.short, 0, CrossingDirection.Above);

plot TrailingStop = trail;

TrailingStop.SetPaintingStrategy(PaintingStrategy.POINTS);
TrailingStop.DefineColor("Sell", GetColor(1));
TrailingStop.AssignValueColor(if state == state.long
then TrailingStop.color("Sell")

____________________

Thanks,
Charles
Bruce_L
 Posted : Thursday, March 14, 2013 8:46:23 AM

Worden Trainer

Joined: 10/7/2004
Posts: 65,138

- Select Share | Browse other users shared items.
- Select the Charts tab (it should be selected by default).
- Type June Traders Tips in the search bar.
- Select Search.
- Select Craig_S' June Traders Tips from 4/10/2009 12:28:13 PM.
- Select Open.

You can type something less than the complete phrase June Traders Tips in the search, but if you do so, please make sure you select the June Traders Tips created by Craig_S.

-Bruce
Personal Criteria Formulas
TC2000 Support Articles
ccsjeba
 Posted : Friday, March 15, 2013 1:30:37 AM
Registered User
Joined: 5/7/2011
Posts: 13

awesome! thanks Bruce!!

magu00
 Posted : Sunday, May 29, 2016 4:46:33 PM
Registered User
Joined: 5/28/2016
Posts: 2

Hi ,is this te procedure to use it in TC2000?

I am using ATR Trailing Stop in ThinkorSwim and I want to use in TC2000 now. I am new, kinf of lost here.

Thanks for youe help

Marina

Bruce_L
 Posted : Tuesday, May 31, 2016 10:51:50 AM

Worden Trainer

Joined: 10/7/2004
Posts: 65,138

The Volatility Stop indicator in TC2000 is based on Average True Range.

-Bruce
Personal Criteria Formulas
TC2000 Support Articles
Users browsing this topic
Guest-1

 Forum Jump Customer Training & Support - Ask a Trainer - TC2000 version 12/18 - Ask a Trainer - TC2000 version 7 - Ask a Trainer - StockFinder 5.0 - PCFs, EasyScan and Custom Indicators General Discussions - Stock and Market Talk - TC2000 version 12 or 18 - TC2000 version 7 - StockFinder 5.0 - RealCode for StockFinder 5.0 Tutorial Videos - TC2000 version 12 tutorial videos - TC2000 version 7 tutorial videos You cannot post new topics in this forum. You cannot reply to topics in this forum. You cannot delete your posts in this forum. You cannot edit your posts in this forum. You cannot create polls in this forum. You cannot vote in polls in this forum.