SLIM Ribbon Indicator for ThinkorSwim

After i had put the slim ribbon indicator into the chart, Is there anyway to see the normal candle instead of HA candle?
 

Join useThinkScript to post your question to a community of 21,000+ developers and traders.

@yamiyugi Welcome to useThinkScript! If you look closely at the chart I posted at the start, it is a bar chart. Try to change the chart type under the settings. Let me know how that works.
 
Here is another study similar but a little different that shows when moving averages are moving in the same direction with clouds and colors check it out and let me know everyone's thoughts , and as usual if we can make it better lets see that too. The coder was a good friend of mine that passed away suddenly a few thanksgivings ago so I try to keep his memory going by sharing a few of his studies he helped me with, info comments on the study is in the coding header area

Hughman_StackedCloud https://tos.mx/r4AsqzU
 
to add to the above comments . I just watched the Slime Ribbon video and amazing I have been using the 8,21 originally for years then added the 13 EMA for the 8,13,21 EMA and still use this set up on everything I trade when using Moving Averages and still use them along with the above Hughman_StackedCloud and had also used a Gupppy Moving Average ribbon as well which included the 3,5,8,10,12,15 then 30 35(changed this one to the 34),40,45,50,60 even though those bands bend but do not break I expect the price to bounce back like a rubber band. I find the 34 EMA and 50 EMA to be very good support points to hold and bounce. I settled on the 8,13,21 EMA eventually. One of the things I noticed is that when price gets to far away from the 21 it must come back to it so one of the ways I used these moving averages was even though the 8,13,21 might be cross and price goes into the higher EMA's I also watch the 8 to see if it crosses the 13 if it does not even though price might cross or pierce the 21 there is a very good chance that price will then go back where is came from crossing the 8 and going past it in the direction it came from. if the 8 does cross the 13 then a very high probability of price going past the 21 and the 8 crossing the13 and the 21 and it keeps on going, something to watch for,

LB_GuppyMovingAverageClouds https://tos.mx/DFfcC7q
 
I am a little confused with some of the conversation early in this thread, how many different Slime studies are there in this thread ? what is Arvi's version ? if someone could just name and separate them all so easy to each of the studies that would be helpful.

Thanks

Hguru
 
Mr. Slim Miller was one of the original OEX pit traders at the CBOE. His website is askSLIM dot com.

This indicator is very customizable. Alerts are built in, you can use regular candles if you wish, you can turn all of the EMA's off and the color of the ribbon will still be there.

If you cannot find what you are looking for when you click the cog, open the code itself and take a look at what is there. This indicator also overrides the color of your volume bars. Lastly, this indicator is good for any timeframe without adjusting the EMA's.
Try it with a TMO or the RSI Laguerre on the bottom. Good trading, Markos.



vcD0LTm.png


thinkScript Code

Rich (BB code):
#Mr Slim Miller at askSLIM dot com
#SlimRibbonCustom_markos9-7-18
input price = close;

input superfast_length = 8;

input fast_length = 13;

input slow_length = 21;

input displace = 0;

def mov_avg8 = ExpAverage(price[-displace], superfast_length);

def mov_avg13 = ExpAverage(price[-displace], fast_length);

def mov_avg21 = ExpAverage(price[-displace], slow_length);

#moving averages

Plot Superfast = mov_avg8;

plot Fast = mov_avg13;

plot Slow = mov_avg21;

def buy = mov_avg8 > mov_avg13 and mov_avg13 > mov_avg21 and low > mov_avg8;

def stopbuy = mov_avg8 <= mov_avg13;

def buynow = !buy[1] and buy;

def buysignal = CompoundValue(1, if buynow and !stopbuy then 1 else if buysignal[1]==1 and stopbuy then 0 else buysignal[1], 0);

plot Buy_Signal = buysignal[1] == 0 and buysignal==1;

Buy_signal.setpaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_UP);

Buy_signal.setdefaultColor(color.dark_GREEN);

Buy_signal.hidetitle();

Alert(condition = buysignal[1] == 0 and buysignal == 1, text = "Buy Signal", sound = Sound.Bell, "alert type" = Alert.BAR);

plot Momentum_Down = buysignal[1] ==1 and buysignal==0;

Momentum_down.setpaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_DOWN);

Momentum_Down.setdefaultColor(color.yellow);

Momentum_down.hidetitle();

Alert(condition = buysignal[1] == 1 and buysignal == 0, text = "Momentum_Down", sound = Sound.Bell, "alert type" = Alert.BAR);

def sell = mov_avg8 < mov_avg13 and mov_avg13 < mov_avg21 and high < mov_avg8;

def stopsell = mov_avg8 >= mov_avg13;

def sellnow = !sell[1] and sell;

def sellsignal = CompoundValue(1, if sellnow and !stopsell then 1 else if sellsignal[1]==1 and stopsell then 0 else sellsignal[1], 0);

Plot Sell_Signal = sellsignal[1] ==0 and sellsignal;

Sell_signal.setpaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_down);

sell_signal.setDefaultColor(color.red);

Sell_signal.hidetitle();

Alert(condition = sellsignal[1] == 0 and sellsignal == 1, text = "Sell Signal", sound = Sound.Bell, "alert type" = Alert.BAR);

Plot Momentum_Up = sellsignal[1]==1 and sellSignal==0;

Momentum_up.setpaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_up);

Momentum_up.setDefaultColor(color.yellow);

Momentum_up.hidetitle();

Alert(condition = sellsignal[1] == 1 and sellSignal == 0, text = "Momentum_Up", sound = Sound.Bell, "alert type" = Alert.BAR);

plot Colorbars = if buysignal ==1 then 1 else if sellsignal ==1 then 2 else if buysignal ==0 or sellsignal==0 then 3 else 0;

colorbars.hide();

Colorbars.definecolor("Buy_Signal_Bars", color.dark_green);

Colorbars.definecolor("Sell_Signal_Bars", color.red);

Colorbars.definecolor("Neutral", color.yellow);

AssignPriceColor(if Colorbars ==1 then colorbars.color("buy_signal_bars") else if colorbars ==2 then colorbars.color("Sell_Signal_bars") else  colorbars.color("neutral"));

#end

Shareable Link

https://tos.mx/zbybTc
Markos what is the difference between your code of the Slim Ribbon and the original and the Arvie version
 

Attachments

  • vcD0LTm.png
    vcD0LTm.png
    215.2 KB · Views: 135
Markos what is the difference between your code of the Slim Ribbon and the original and the Arvie version
@Hguru , Arvi is the name of Slim Millers rt. hand man and top student. The only differences between that one and the one I posted is the color and my change from HA Candle to Bars. Arvi's version works better on a light background. Both have the alerts baked in for crossovers, etc. I got mine directly from Steve Miller when he stopped in at Theotrade.
Others put their own spin on things and have posted those, which we encourage, but it does make it confusing to know which is the original.
The 2, 3 and 4 multi-grid charts are an example for those that wanted to see how it looked, as they had in other threads.
 
Last edited:
o'wow, learning the coordination of 3 MA's, macd and stoch is when my trading success started. I couldn't be further from that now, but brings back memories. But yeah, indeed, they are great for the quick snipes too.
 
Anyone aware of repaint issues using the slim ribbon on 333t setting? Not that I have found issues just need to be sure.
 
Hi all,

first post

So, im playing around with some code (ive actually taken the slimribbons and modified it to my preferences), still learning about code tho

anyways, Ive added a addcloud funtion to the code but i wanted to be able to turn thecloud on and off in the customization window

Ive added the input addcloud = yes; but when i toggle the yes/no it doesnt turn off etc

below is the code

also playing with strategies. Is the addorder function the only thing i need to test a strat (at end of code)

Thanks fellas

This forum rocks!

Code:
input price = close;

input superfast_length = 4;

input fast_length = 8;

input slow_length = 13;

input superslow_length = 50;

input displace = 0;

input addcould = yes;

def mov_avg4 = MovAvgExponential(price[-displace], superfast_length);

def mov_avg8 = MovAvgExponential(price[-displace], fast_length);

def mov_avg13 = MovAvgExponential(price[-displace], slow_length);

def mov_avg50 = MovAvgExponential(price[-displace], superslow_length);

#moving averages

plot Superfast = mov_avg4;
SuperFast.SetDefaultColor(Color.yellow);

plot Fast = mov_avg8;
Fast.SetDefaultColor(Color.red);

plot Slow = mov_avg13;
Slow.SetDefaultColor(Color.white);

plot SuperSlow = mov_avg50;
SuperSlow.SetDefaultColor(Color.green);

def buy = price crosses above mov_avg13;

def stopbuy = mov_avg4 <= mov_avg13;

def buynow = !buy[1] and buy;

def buysignal = CompoundValue(1, if buynow and !stopbuy then 1 else if buysignal[1] == 1 and stopbuy then 0 else buysignal[1], 0);

plot Buy_Signal = buy;

Buy_Signal.SetPaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_UP);

Buy_Signal.SetDefaultColor(Color.DARK_GREEN);

Buy_Signal.HideTitle();



plot Momentum_Down = buysignal[1] == 1 and buysignal == 0;

Momentum_Down.SetPaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_DOWN);

Momentum_Down.SetDefaultColor(Color.YELLOW);

Momentum_Down.HideTitle();



def sell = price crosses below mov_avg13;

def stopsell = mov_avg4 >= mov_avg8;

def sellnow = !sell[1] and sell;

def sellsignal = CompoundValue(1, if sellnow and !stopsell then 1 else if sellsignal[1] == 1 and stopsell then 0 else sellsignal[1], 0);



plot Sell_Signal = sell;

Sell_Signal.SetPaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_DOWN);

Sell_Signal.SetDefaultColor(Color.RED);

Sell_Signal.HideTitle();


plot Momentum_Up = sellsignal[1] == 1 and sellsignal == 0;

Momentum_Up.SetPaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_UP);

Momentum_Up.SetDefaultColor(Color.YELLOW);

Momentum_Up.HideTitle();

AddCloud(SuperFast, Slow, Color.GREEN, Color.RED);


#AddChartBubble(buy, price, price, Color.cyan);
#AddChartBubble(sell, price, price, Color.yellow);
 
 
#LONG STRAT ORDERS
AddOrder(OrderType.BUY_TO_OPEN, price crosses above mov_avg13);
AddOrder(OrderType.Sell_TO_CLOSE, price crosses below mov_avg8);

#SHORT STRAT ORDERS
#AddOrder(OrderType.SELL_TO_OPEN, price crosses below mov_avg13);
#AddOrder(OrderType.BUY_TO_CLOSE, price crosses above mov_avg8);
 
@waltj Here is the code that you need to toggle the cloud functionality.

Code:
AddCloud(if addCloud then SuperFast else Double.NaN, Slow, Color.GREEN, Color.RED);

Of course this assume you have defined a variable "addCloud" with the input value of either yes or no.
 
to add to the above comments . I just watched the Slime Ribbon video and amazing I have been using the 8,21 originally for years then added the 13 EMA for the 8,13,21 EMA and still use this set up on everything I trade when using Moving Averages and still use them along with the above Hughman_StackedCloud and had also used a Gupppy Moving Average ribbon as well which included the 3,5,8,10,12,15 then 30 35(changed this one to the 34),40,45,50,60 even though those bands bend but do not break I expect the price to bounce back like a rubber band. I find the 34 EMA and 50 EMA to be very good support points to hold and bounce. I settled on the 8,13,21 EMA eventually. One of the things I noticed is that when price gets to far away from the 21 it must come back to it so one of the ways I used these moving averages was even though the 8,13,21 might be cross and price goes into the higher EMA's I also watch the 8 to see if it crosses the 13 if it does not even though price might cross or pierce the 21 there is a very good chance that price will then go back where is came from crossing the 8 and going past it in the direction it came from. if the 8 does cross the 13 then a very high probability of price going past the 21 and the 8 crossing the13 and the 21 and it keeps on going, something to watch for,

LB_GuppyMovingAverageClouds https://tos.mx/DFfcC7q
Ive done the same until FINALLY I realized the importance of the vwap. Now days I trade the 2-5min above oe below vwap so I put up a 20ma that works as a guide for me.
 

Similar threads

Not the exact question you're looking for?

Start a new thread and receive assistance from our community.

87k+ Posts
511 Online
Create Post

Similar threads

Similar threads

The Market Trading Game Changer

Join 2,500+ subscribers inside the useThinkScript VIP Membership Club
  • Exclusive indicators
  • Proven strategies & setups
  • Private Discord community
  • ‘Buy The Dip’ signal alerts
  • Exclusive members-only content
  • Add-ons and resources
  • 1 full year of unlimited support

Frequently Asked Questions

What is useThinkScript?

useThinkScript is the #1 community of stock market investors using indicators and other tools to power their trading strategies. Traders of all skill levels use our forums to learn about scripting and indicators, help each other, and discover new ways to gain an edge in the markets.

How do I get started?

We get it. Our forum can be intimidating, if not overwhelming. With thousands of topics, tens of thousands of posts, our community has created an incredibly deep knowledge base for stock traders. No one can ever exhaust every resource provided on our site.

If you are new, or just looking for guidance, here are some helpful links to get you started.

What are the benefits of VIP Membership?
VIP members get exclusive access to these proven and tested premium indicators: Buy the Dip, Advanced Market Moves 2.0, Take Profit, and Volatility Trading Range. In addition, VIP members get access to over 50 VIP-only custom indicators, add-ons, and strategies, private VIP-only forums, private Discord channel to discuss trades and strategies in real-time, customer support, trade alerts, and much more. Learn all about VIP membership here.
How can I access the premium indicators?
To access the premium indicators, which are plug and play ready, sign up for VIP membership here.
Back
Top