UCS_TTM_Wave A & B & C

This is a replica of TTM Wave A B C.

The ABC Waves are comprised of various moving averages and oscillators ( MACD ) used to visualize the overall strength and direction of a given market across multiple time frames.
The “A Wave” measures short term relative strength and direction of a market, the “C Wave” measures longer term strength and the “B Wave” plots the same for a medium time period.

Here is the link to the ACTUAL Indicator - http://members.simpleroptions.com/option...

Instruction -
Load the Indicator three times, Turn Off the Other two Waves. For eg., Wave A - Check / Wave B - Uncheck / Wave C - Uncheck. = This will plot Wave A.
Remove from Favorite Scripts Add to Favorite Scripts
// Created by UCSGEARS on 8/30/2014
// Updated - 03/22/2014

study(title="UCS_TTM_Wave A & B & C", shorttitle="WAVE-A/B/C", precision = 2)

usewa = input(true, title = "Wave A", type=bool)
usewb = input(true, title = "Wave B", type=bool)
usewc = input(true, title = "Wave C", type=bool)

// Wave A
fastMA1 = usewa ? ema(close, 8) : na
slowMA1 = usewa ? ema(close, 34) : na
macd1 =  usewa ? fastMA1 - slowMA1 : na
signal1 =  usewa ? ema(macd1, 34) : na
hist1 =  usewa ? macd1 - signal1 : na

fastMA2 = usewa ? ema(close, 8) : na
slowMA2 = usewa ? ema(close, 55) : na
macd2 = usewa ? fastMA2 - slowMA2 : na
signal2 = usewa ? ema(macd2, 55) : na
hist2 = usewa ? macd2 - signal2 : na

// Wave B
fastMA3 = usewb ? ema(close, 8) : na
slowMA3 = usewb ? ema(close, 89) : na
macd3 = usewb ? fastMA3 - slowMA3 : na
signal3 = usewb ? ema(macd3, 89) : na
hist3 = usewb ? macd3 - signal3 : na

fastMA4 = usewb ? ema(close, 8) : na
slowMA4 = usewb ? ema(close, 144) : na
macd4 = usewb ? fastMA4 - slowMA4 : na
signal4 = usewb ? ema(macd4, 144) : na
hist4 = usewb ? macd4 - signal4 : na

// Wave C
fastMA5 = usewc ? ema(close, 8) : na
slowMA5 = usewc ? ema(close, 233) : na
macd5 = usewc ? fastMA5 - slowMA5 : na
signal5 = usewc ? ema(macd5, 233) : na
hist5 = usewc ? macd5 - signal5 : na

fastMA6 = usewc ? ema(close, 8) : na
slowMA6 = usewc ? ema(close, 377) : na
macd6 = usewc ? fastMA6 - slowMA6 : na

// PLOTs
plot(macd6, color=#FF0000, style=histogram, title="Wave C1", linewidth=3)
plot(hist5, color=#FF8C00, style=histogram, title="Wave C2", linewidth=3)

plot(hist4, color=#FF00FF, style=histogram, title="Wave B1", linewidth=3)
plot(hist3, color=#0000FF, style=histogram, title="Wave B2", linewidth=3)

plot(hist2, color=#008000, style=histogram, title="Wave A1", linewidth=3)
plot(hist1, color=#DAA520, style=histogram, title="Wave A2", linewidth=3)

hline(0, color=black, title = "Zero Line", linewidth = 2, linestyle = solid)
Wow thanks a whole bunch @ucsgears for making this code available. I'm just finished reading chapters 11 and 12 of John Carter's Master the Trade (I'm too much of a newbie trader to discern if he's legit or not), and building my own SqueezeWave indicator. I was looking for the TTM Waves algorithm, and there you have it, thanks to you. Gotta say: I find it deceptively simple math wise. It seems people are making good money with beginner code!
What do the two different colors for each wave indicate? Sometimes yellow is higher/ lower than the green. What does that indicate?
+9 Reply
Hi, is there anyway I can create a stocks scanner based on TTM wave A, B, C.?
how do i load this indicator.i am totally novice in this.. thx
Having trouble with adding the script to TOS, any thought?
@BKing, It cannot be added directly... Modify the code def and if else statement
BKing ucsgears
@ucsgears, I'm not someone who can modify code, is there a way to get in touch?
@ucsgears, Hi UCSGears, i am trying to get TOS to read this, but it seems some definitions were left out and i guess some input statements and declare lower; etc. i am not a pro script writer at all, so i am not exactly sure where the if else statements should go, i suspect it could go where the question sign is where you have usewa if ema(close, 8) : na or should it be usewa if else ema(close, 8) : na?

also, should i put input in front of the usewa, usewb and usewc? your assistance would be greatly appreciated. i put a sample of what i was trying for it to work in TOS, not sure if i am on the right path.

# Created by UCSGEARS on 8/30/2014
# Updated - 03/22/2014

declare lower;

#study(title="UCS_TTM_Wave A & B & C", shorttitle="WAVE-A/B/C", precision = 2)

input usewa = input(true, title = "Wave A", type=bool)
input usewb = input(true, title = "Wave B", type=bool)
input usewc = input(true, title = "Wave C", type=bool)

# Wave A
fastMA1 = usewa if ema(close, 8) : else
slowMA1 = usewa if ema(close, 34) : else
macd1 = usewa if fastMA1 - slowMA1 : else
signal1 = usewa if ema(macd1, 34) : else
hist1 = usewa if macd1 - signal1 : else
Is it just me or do you have some code missing for Wave 6 (Wave C, Wave #2)... It would be right after line 46, why have you left out the same calculations you did on the first 5 on the 6th? Maybe I am missing something, who knows :p
Kantardziski Kantardziski
This is what I am thinking should be there...
signal6 = usewc ? ema(macd6, 377) : na
hist6 = usewc ? macd6 -signal6 : na

EN English (IN)
EN English
EN English (UK)
DE Deutsch
FR Français
ES Español
IT Italiano
PL Polski
SV Svenska
TR Türkçe
RU Русский
PT Português
ID Bahasa Indonesia
MS Bahasa Melayu
TH ภาษาไทย
VI Tiếng Việt
JA 日本語
KO 한국어
ZH 简体中文
ZH 繁體中文
AR العربية
HE עברית
Home Stock Screener Forex Screener Crypto Screener Economic Calendar How It Works Chart Features Pricing House Rules Moderators Website & Broker Solutions Widgets Stock Charting Library Get Help Feature Request Blog & News FAQ Wiki Twitter
Profile Profile Settings Account and Billing Get Help Ideas Published Followers Following Private Messages Chat Sign Out