- Momentum
- On price
- Beginner
Marks the candle on which the Awesome Oscillator crosses zero in the direction of the 100-period SMA. The SMA acts as a simple trend filter for the oscillator.
The rules
HIGHER marker
The Awesome Oscillator (5, 34) closes above zero after the previous candle was at or below zero, and the close is above SMA(100).
LOWER marker
The Awesome Oscillator closes below zero after the previous candle was at or above zero, and the close is below SMA(100).
A marker appears after the next candle opens and is drawn on the candle that completed the setup. It is a chart observation, not an instruction to trade.
How to read it
The yellow line is the 100-period SMA. A green HIGHER triangle under a candle means price is above the SMA and the Awesome Oscillator just crossed above zero; a red LOWER triangle above a candle is the mirror case below the SMA. The Awesome Oscillator itself is not drawn on the price chart.
Indicators used
- Awesome Oscillator (5, 34)
- SMA (100)
Same view with built-in indicators: Add IQ Option's Awesome Oscillator (5, 34) and a Moving Average of type SMA with period 100.
Default settings
| AO fast period | 5 |
|---|---|
| AO slow period | 34 |
| SMA period | 100 |
Every value is an input in the script settings. Platform advice is off by default.
Key points
- The Awesome Oscillator compares a 5-period average with a 34-period average of the candle midpoint.
- When it crosses above zero, short-term momentum is overtaking long-term momentum.
- The 100-period SMA tells us which side of the larger trend we are on.
- HIGHER needs the zero cross up with price above the SMA; LOWER needs the cross down with price below it.
- Markers are confirmed on a completed candle, so they do not repaint.
- Try it on a Practice balance, on the 1-minute chart used in the article.
Limitations. The article reads the AO by histogram colour and the SMA cutting through the price bar; this script uses the zero-line cross and the price side of the SMA, which is a stricter and simpler test. Zero-line crosses can be frequent when price moves sideways around the SMA. Test on the Practice balance before risking real funds.
Install it in four steps
- Download and inspectDownload one .lua file and open it in a plain-text editor if you want to read it first. If you downloaded the ZIP, extract it.
- Open Chart Analysis → ScriptsIn the IQ Option traderoom, choose the Practice balance, open the chart analysis panel, select Scripts and choose Import script.
- Save and add to chartSelect the downloaded file, review the imported code, choose Save, then use the + control to add it to the chart.
- Change one input at a timeConfirm the default view first. Then adjust periods, levels or colours one setting at a time and note what changes.
Complete source code
The download and this preview resolve to the same reviewed file. SHA-256: b7e220ad6788c8493cd0f6eabd8d450217047de6311dfe2123736bad5ca36b33
-- SPDX-License-Identifier: MIT
-- IQOptionWiki QCS Library
-- IQOW Awesome Oscillator SMA v1.0.0
--
-- Combines the Awesome Oscillator (5 and 34 SMA of the candle midpoint) with a
-- 100-period SMA, as in the related article. The AO crossing zero shows short-term
-- momentum overtaking long-term momentum; the SMA keeps the mark on the side of
-- the larger trend.
--
-- HIGHER: the Awesome Oscillator closes above zero after the previous candle was
-- at or below zero, and the close is above the SMA.
-- LOWER: the Awesome Oscillator closes below zero after the previous candle was
-- at or above zero, and the close is below the SMA.
--
-- Markers use the previous completed candle: they appear after the next candle
-- opens and are shifted back one bar onto the candle that qualified.
-- Educational chart tool only. It does not place trades, choose an expiry,
-- predict outcomes, or guarantee results. Test on a Practice balance first.
instrument {
name = "IQOW Awesome Oscillator SMA",
short_name = "IQOW AO SMA",
overlay = true
}
input_group {
"1. Awesome Oscillator",
ao_fast_period = input (5, "Fast SMA period", input.integer, 1, 100),
ao_slow_period = input (34, "Slow SMA period", input.integer, 2, 250)
}
input_group {
"2. Trend SMA",
sma_period = input (100, "SMA period", input.integer, 2, 400)
}
input_group {
"Display and advice",
sma_visible = input { default = true, type = input.plot_visibility },
signals_visible = input { default = true, type = input.plot_visibility },
advice_enabled = input { default = false, name = "Enable platform advice", type = input.boolean }
}
input_group {
"Colors",
sma_color = input { default = "#FFD166", type = input.color },
sma_width = input { default = 2, type = input.line_width },
higher_color = input { default = "#25E154", type = input.color },
lower_color = input { default = "#FF6C58", type = input.color },
signal_text_color = input { default = "#FFFFFF", type = input.color }
}
-- Awesome Oscillator = SMA of the midpoint (hl2): fast minus slow.
ao_value = sma (hl2, ao_fast_period) - sma (hl2, ao_slow_period)
trend_sma = sma (close, sma_period)
local ao_now = get_value (ao_value, nil)
local ao_previous = get_value (ao_value [1], nil)
local sma_now = get_value (trend_sma, nil)
local close_now = get_value (close, nil)
local periods_are_valid = ao_fast_period < ao_slow_period
local data_is_ready =
periods_are_valid and
ao_now ~= nil and
ao_previous ~= nil and
sma_now ~= nil and
close_now ~= nil
-- Event: the AO crosses its zero line on this candle.
local ao_crosses_up = data_is_ready and ao_previous <= 0 and ao_now > 0
local ao_crosses_down = data_is_ready and ao_previous >= 0 and ao_now < 0
higher_setup = conditional (ao_crosses_up and close_now > sma_now)
lower_setup = conditional (ao_crosses_down and close_now < sma_now)
-- Confirm only a new setup on the previous completed candle.
confirmed_higher = conditional (
get_value (higher_setup [1], false) and
not get_value (higher_setup [2], false)
)
confirmed_lower = conditional (
get_value (lower_setup [1], false) and
not get_value (lower_setup [2], false)
)
if sma_visible then
plot (trend_sma, "SMA", sma_color, sma_width)
end
if signals_visible then
plot_shape (
confirmed_higher,
"AO SMA HIGHER",
shape_style.triangleup,
shape_size.small,
higher_color,
shape_location.belowbar,
-1,
"HIGHER",
signal_text_color
)
plot_shape (
confirmed_lower,
"AO SMA LOWER",
shape_style.triangledown,
shape_size.small,
lower_color,
shape_location.abovebar,
-1,
"LOWER",
signal_text_color
)
end
-- QCS advice is a platform notification state only; it does not place trades.
if advice_enabled and
get_value (confirmed_higher, false) and
not get_value (confirmed_lower, false) then
advise (advice.buy)
elseif advice_enabled and
get_value (confirmed_lower, false) and
not get_value (confirmed_higher, false) then
advise (advice.sell)
else
advise (advice.neutral)
end
More momentum scripts
- Momentum
- Context indicator
- Own panel
- Beginner
Price EMA Distance Percent
Shows how far the selected price source is above or below an EMA in percentage terms. A configurable reference zone helps compare the current distance with your chosen scale.
Indicators: EMA (20) distance in %
- Momentum
- Signal engine
- On price
- Advanced
IQ_WIKI_SCRIP_V1.1.0
A completed-candle adaptation of the regular IQOptionWiki Signals score. It weighs RSI, MACD, Bollinger %B, five directional candle patterns and optional chart-volume confirmation into one score and marks new qualifying setups.
Indicators: RSI · MACD · Bollinger %B (population deviation) · Five candlestick patterns · Optional chart volume
- Momentum
- Signal engine
- On price
- Advanced
IQ_WIKI_BINARY_SIGNAL_GUN_V1.1.0
A stricter local confluence engine with weighted RSI, ATR-normalized MACD, Bollinger and pattern-family votes. Optional strategy alignment must agree with the base direction.
Indicators: Weighted RSI · ATR-normalized MACD · Bollinger · Pattern families · ATR risk
Download all 56 scripts as one ZIP · MIT License, provided “as is”, without warranty. IQOptionWiki is independent of the IQ Option platform operator. Nothing here is investment advice or a guarantee of results.