Slimmer Ribbon Indicator for ThinkorSwim

netarchitech

netarchitech

Well-known member
VIP
@HighBredCloud For your review:

A "Rough" Simple Moving Average Slimmer Ribbon:




A "Smoothed" Simple Moving Average Slimmer Ribbon:




A "Rough" Hull Moving Average Slimmer Ribbon:




A "Smoothed" Hull Moving Average Slimmer Ribbon:



Code:
# filename: MR__EZ_Slimmer_Ribbon_
# source: https://usethinkscript.com/threads/slim-ribbon-indicator-for-thinkorswim.245/
# original authors: Slim Miller and @markos
# idea source: @HighBredCloud
# enhancements: @netarchitech

#V01.01.11.20.2019

input price = close;
input SlimmerMALength1 = 8;
input SLimmerMALength2 = 13;
input SlimmerMALength3 = 21;
input SlimmerMAType = AverageType.EXPONENTIAL;

# plot and smooth the Moving Averages
def SlimmerMA1 = MovingAverage(SlimmerMAType, price, SlimmerMALength1);
plot SlimmerMovAvg1 = SlimmerMA1;
SlimmerMovAvg1.SetDefaultColor(Color.GREEN);
SlimmerMovAvg1.SetLineWeight(2);
SlimmerMovAvg1.hide();

def SlimmerMA2 = MovingAverage(SlimmerMAType, price, SlimmerMALength2);
plot SlimmerMovAvg2 = SlimmerMA2;
SlimmerMovAvg2.SetDefaultColor(Color.YELLOW);
SlimmerMovAvg2.SetLineWeight(2);
SlimmerMovAvg2.hide();

def SlimmerMA3 = MovingAverage(SlimmerMAType, price, SlimmerMALength3);
plot SlimmerMovAvg3 = SlimmerMA3;
SlimmerMovAvg3.SetDefaultColor(Color.RED);
SlimmerMovAvg3.SetLineWeight(2);
SlimmerMovAvg3.hide();


input applySelectSmoothing = yes;

def smooth_MA1 = EhlersSuperSmootherFilter(MovingAverage(SlimmerMAType, price, SlimmerMALength1));
def smooth_MA2 = EhlersSuperSmootherFilter(MovingAverage(SlimmerMAType, price, SlimmerMALength2));
def smooth_MA3 = EhlersSuperSmootherFilter(MovingAverage(SlimmerMAType, price, SlimmerMALength3));

input SelectSmoothingType = {default "Smooth MAs", "No Smoothing"};

plot X;
X.SetDefaultColor(Color.GREEN);
X.SetLineWeight(2);
plot Y;
Y.SetDefaultColor(Color.YELLOW);
Y.SetLineWeight(2);
plot Z;
Z.SetDefaultColor(Color.RED);
Z.SetLineWeight(2);

switch (SelectSmoothingType) {
case "Smooth MAs":
    X = if applySelectSmoothing and SlimmerMA1 then smooth_MA1 else SlimmerMA1;
    Y = if applySelectSmoothing and SlimmerMA2 then smooth_MA2 else SlimmerMA2;
    Z = if applySelectSmoothing and SlimmerMA3 then smooth_MA3 else SlimmerMA3;
case "No Smoothing":
    X = if applySelectSmoothing and SlimmerMA1 then SlimmerMA1 else SlimmerMA1;
    Y = if applySelectSmoothing and SlimmerMA2 then SlimmerMA2 else SlimmerMA2;
    Z = if applySelectSmoothing and SlimmerMA3 then SlimmerMA3 else SlimmerMA3;
}
;
 
Last edited:
H

HighBredCloud

Well-known member
VIP
@netarchitech WOW...looks nice...quick question to confirm as I think I know the answer to this BUT...can the values be changed other than 8 13 21 to others for example 20 50 100 and have them reflect the correct values or are those numbers that you used to smoothed them out somehow tied to smoothing formula ONLY for the 8 13 21 lengths?
 
netarchitech

netarchitech

Well-known member
VIP
@HighBredCloud It's fully customizable...including the lengths of the moving averages :cool: Take it for a test drive...
 
H

HighBredCloud

Well-known member
VIP
@netarchitech Already did!...tested it out on exponential MA...AND its AWESOME! Are you able to input more moving averages from the PercentR_MAC such as TEMA DEMA...and the the rest of the HULL Suite etc?

Such a "little" change that made a HUGE difference. Just WOW...

 
T

tomsk

Well-known member
VIP
@HighBredCloud For your review:

A "Rough" Simple Moving Average Slimmer Ribbon:




A "Smoothed" Simple Moving Average Slimmer Ribbon:




A "Rough" Hull Moving Average Slimmer Ribbon:




A "Smoothed" Hull Moving Average Slimmer Ribbon:



Code:
# filename: MR__EZ_Slimmer_Ribbon_
# source: https://usethinkscript.com/threads/slim-ribbon-indicator-for-thinkorswim.245/
# original authors: Slim Miller and @markos
# idea source: @HighBredCloud
# enhancements: @netarchitech

#V01.01.11.20.2019

input price = close;
input SlimmerMALength1 = 8;
input SLimmerMALength2 = 13;
input SlimmerMALength3 = 21;
input SlimmerMAType = AverageType.EXPONENTIAL;

# plot and smooth the Moving Averages
def SlimmerMA1 = MovingAverage(SlimmerMAType, price, SlimmerMALength1);
plot SlimmerMovAvg1 = SlimmerMA1;
SlimmerMovAvg1.SetDefaultColor(Color.GREEN);
SlimmerMovAvg1.SetLineWeight(2);
SlimmerMovAvg1.hide();

def SlimmerMA2 = MovingAverage(SlimmerMAType, price, SlimmerMALength2);
plot SlimmerMovAvg2 = SlimmerMA2;
SlimmerMovAvg2.SetDefaultColor(Color.YELLOW);
SlimmerMovAvg2.SetLineWeight(2);
SlimmerMovAvg2.hide();

def SlimmerMA3 = MovingAverage(SlimmerMAType, price, SlimmerMALength3);
plot SlimmerMovAvg3 = SlimmerMA3;
SlimmerMovAvg3.SetDefaultColor(Color.RED);
SlimmerMovAvg3.SetLineWeight(2);
SlimmerMovAvg3.hide();


input applySelectSmoothing = yes;

def smooth_MA1 = EhlersSuperSmootherFilter(MovingAverage(SlimmerMAType, price, SlimmerMALength1));
def smooth_MA2 = EhlersSuperSmootherFilter(MovingAverage(SlimmerMAType, price, SlimmerMALength2));
def smooth_MA3 = EhlersSuperSmootherFilter(MovingAverage(SlimmerMAType, price, SlimmerMALength3));

input SelectSmoothingType = {default "Smooth MAs", "No Smoothing"};

plot X;
X.SetDefaultColor(Color.GREEN);
X.SetLineWeight(2);
plot Y;
Y.SetDefaultColor(Color.YELLOW);
Y.SetLineWeight(2);
plot Z;
Z.SetDefaultColor(Color.RED);
Z.SetLineWeight(2);

switch (SelectSmoothingType) {
case "Smooth MAs":
    X = if applySelectSmoothing and SlimmerMA1 then smooth_MA1 else SlimmerMA1;
    Y = if applySelectSmoothing and SlimmerMA2 then smooth_MA2 else SlimmerMA2;
    Z = if applySelectSmoothing and SlimmerMA3 then smooth_MA3 else SlimmerMA3;
case "No Smoothing":
    X = if applySelectSmoothing and SlimmerMA1 then SlimmerMA1 else SlimmerMA1;
    Y = if applySelectSmoothing and SlimmerMA2 then SlimmerMA2 else SlimmerMA2;
    Z = if applySelectSmoothing and SlimmerMA3 then SlimmerMA3 else SlimmerMA3;
}
;
@netarchitech You might like to consider using something like the GMMA. I found it useful when I built a moving average type of indicator years ago with 5-6 different moving averages.
 
H

HighBredCloud

Well-known member
VIP
@netarchitech You might like to consider using something like the GMMA. I found it useful when I built a moving average type of indicator years ago with 5-6 different moving averages.
@tomsk has a good point...people can just uncheck what MA's they don't want...THIS is really cool stuff.
 
netarchitech

netarchitech

Well-known member
VIP
Are you able to input more moving averages from the PercentR_MAC such as TEMA DEMA...and the the rest of the HULL Suite etc?
Will put it on the list for tomorrow...If I remember correctly it was the PPO with all of the moving averages...as I think about it might greatly increase the complexity, but I will try... :)
 
netarchitech

netarchitech

Well-known member
VIP
@tomsk Thanks for the tip...I'll look into it :cool: Thanks also for posting the Classification/Categorization post...it definitely helps to have guidelines to follow :)
 
J007RMC

J007RMC

Active member
2019 Donor
VIP
I worked today with the slim ribbon indicator and discovered something being I added Horseriders swing hi lo indicator with surprising results.. I'm not so sure the change is a bad thing although the results surprised me.
slim ribbon standard: slim ribbon with added swing hi/lo
 
J007RMC

J007RMC

Active member
2019 Donor
VIP
So yellow means upswing and pink shows downswing. Actually the swing hi lo modification I beleive by Tomsk.
 
Last edited:
D

diazlaz

Well-known member
2019 Donor
VIP
So yellow means upswing and pink shows downswing. Actually the swing hi lo modification I beleive by Tomsk.
Hi @J007RMC please expand on it some more ;) - big fan of the slim ribbon, if you all notice something noteworthy and require further integration how do we help :)
 
H

HighBredCloud

Well-known member
VIP
@J007RMC did you try the Slimmer Ribbon that @netarchitech recently enhanced?
 
J007RMC

J007RMC

Active member
2019 Donor
VIP
no just noticed the change on reg slim ribbon so I put it on 522 tk and I'm kind of liking it will see tomorrow I just trade stocks
 
D

diazlaz

Well-known member
2019 Donor
VIP
interesting conversation to see how we can improve this...

so here is a quick update, on the slim ribbon and added the smoothing to the de facto slim ribbon (below) and then created a smoothing version:



the slim ribbon with no smoothing (upper) is faster in entry than the modified version (smoothing) below. note this version is using a 5 - 8 - 13, rather than the traditional 8 - 13 - 21 setting.
 
Last edited:
J007RMC

J007RMC

Active member
2019 Donor
VIP
very nice thank you. I really like this excited to use it tomorrow.
 
T

Thomas

Active member
@HighBredCloud For your review:

A "Rough" Simple Moving Average Slimmer Ribbon:




A "Smoothed" Simple Moving Average Slimmer Ribbon:




A "Rough" Hull Moving Average Slimmer Ribbon:




A "Smoothed" Hull Moving Average Slimmer Ribbon:



Code:
# filename: MR__EZ_Slimmer_Ribbon_
# source: https://usethinkscript.com/threads/slim-ribbon-indicator-for-thinkorswim.245/
# original authors: Slim Miller and @markos
# idea source: @HighBredCloud
# enhancements: @netarchitech

#V01.01.11.20.2019

input price = close;
input SlimmerMALength1 = 8;
input SLimmerMALength2 = 13;
input SlimmerMALength3 = 21;
input SlimmerMAType = AverageType.EXPONENTIAL;

# plot and smooth the Moving Averages
def SlimmerMA1 = MovingAverage(SlimmerMAType, price, SlimmerMALength1);
plot SlimmerMovAvg1 = SlimmerMA1;
SlimmerMovAvg1.SetDefaultColor(Color.GREEN);
SlimmerMovAvg1.SetLineWeight(2);
SlimmerMovAvg1.hide();

def SlimmerMA2 = MovingAverage(SlimmerMAType, price, SlimmerMALength2);
plot SlimmerMovAvg2 = SlimmerMA2;
SlimmerMovAvg2.SetDefaultColor(Color.YELLOW);
SlimmerMovAvg2.SetLineWeight(2);
SlimmerMovAvg2.hide();

def SlimmerMA3 = MovingAverage(SlimmerMAType, price, SlimmerMALength3);
plot SlimmerMovAvg3 = SlimmerMA3;
SlimmerMovAvg3.SetDefaultColor(Color.RED);
SlimmerMovAvg3.SetLineWeight(2);
SlimmerMovAvg3.hide();


input applySelectSmoothing = yes;

def smooth_MA1 = EhlersSuperSmootherFilter(MovingAverage(SlimmerMAType, price, SlimmerMALength1));
def smooth_MA2 = EhlersSuperSmootherFilter(MovingAverage(SlimmerMAType, price, SlimmerMALength2));
def smooth_MA3 = EhlersSuperSmootherFilter(MovingAverage(SlimmerMAType, price, SlimmerMALength3));

input SelectSmoothingType = {default "Smooth MAs", "No Smoothing"};

plot X;
X.SetDefaultColor(Color.GREEN);
X.SetLineWeight(2);
plot Y;
Y.SetDefaultColor(Color.YELLOW);
Y.SetLineWeight(2);
plot Z;
Z.SetDefaultColor(Color.RED);
Z.SetLineWeight(2);

switch (SelectSmoothingType) {
case "Smooth MAs":
    X = if applySelectSmoothing and SlimmerMA1 then smooth_MA1 else SlimmerMA1;
    Y = if applySelectSmoothing and SlimmerMA2 then smooth_MA2 else SlimmerMA2;
    Z = if applySelectSmoothing and SlimmerMA3 then smooth_MA3 else SlimmerMA3;
case "No Smoothing":
    X = if applySelectSmoothing and SlimmerMA1 then SlimmerMA1 else SlimmerMA1;
    Y = if applySelectSmoothing and SlimmerMA2 then SlimmerMA2 else SlimmerMA2;
    Z = if applySelectSmoothing and SlimmerMA3 then SlimmerMA3 else SlimmerMA3;
}
;
I do like these ribbons, experimenting with hull as it's a bit more unusual from your normal hull, but with any indicator,......messy. will experiment.
 
H

HighBredCloud

Well-known member
VIP
I do like these ribbons, experimenting with hull as it's a bit more unusual from your normal hull, but with any indicator,......messy. will experiment.
Try a Tillson T3...set it to 13 on anything less than 5 min chart and 8 to above 15 min...works better than the typical moving averages IMO. Too many people use different moving averages...HULL, Simple, EXP...Weighted...etc...
 
T

Thomas

Active member
Try a Tillson T3...set it to 13 on anything less than 5 min chart and 8 to above 15 min...works better than the typical moving averages IMO. Too many people use different moving averages...HULL, Simple, EXP...Weighted...etc...
Yes, I will put the 8EMA, .......but look for my Tilson script.......
 
H

HighBredCloud

Well-known member
VIP
Yes, I will put the 8EMA, .......but look for my Tilson script.......
You made a Tillson script? can you share because the ONLY thing that pops up in search is what @netarchitech made...Would be curious to see...firm believer in Tillson T3.
 

Similar threads

Top