iqow-fisher-transform-reversal.lua 5 KB · Free, MIT license
On assets priced above about 100 (such as JPY pairs) this script's panel can hide its markers, so import the markers file too: it draws them on the price chart.
For the IQ Option web traderoom. Quadcode does not draw HIGHER and LOWER markers on mobile.
Add it to IQ Option in 3 steps
- Get the file. Press Get the script. Your browser saves a .lua file.
- Import it in IQ Option. Open the web traderoom on the Practice balance. Click the wave icon at the bottom left of the chart, open the Scripts tab, press Import script and pick the file.
- Add it to the chart. The code opens in an editor. Click the plus button under it (Add to chart). Save is only needed after you edit the code.
Full illustrated guide, with screenshots → Watch the video
Risk. Trading can lose money. A marker is a chart observation, not a prediction, and this script is checked on test data, not proven in live trading. Try it on the Practice balance first.
- Reversal
- Own panel
- Intermediate
Marks a Fisher Transform cross of its trigger line while the indicator is in an extreme zone. This is the extreme-then-cross confirmation the related article describes.
In the indicator panel the markers are drawn at the candle's price, so on assets priced above about 100 (for example JPY pairs) they fall outside the panel. Load fisher-transform-reversal-markers to see the same markers on the price chart.
Watch: install it and follow a Practice trade
The rules
HIGHER marker
The Fisher Transform(10) crosses above its trigger line (its previous value) while it is at or below -1.5.
LOWER marker
The Fisher Transform(10) crosses below its trigger line while it is at or above +1.5.
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 green line is the Fisher Transform and the red line is its trigger, one candle behind. A green HIGHER triangle at the bottom marks an upward cross below -1.5; a red LOWER triangle at the top marks a downward cross above +1.5.
Indicators used
- Ehlers Fisher Transform (10)
Same view with built-in indicators: Add Ehler's Fisher Transform (period 10) from the Trend indicators and look at the EF and EF Trigger lines.
Default settings
| Period | 10 |
|---|---|
| Extreme level | 1.5 |
Every value is an input in the script settings. Platform advice is off by default.
Key points
- The Fisher Transform reshapes price so turning points stand out.
- It has two lines: the Fisher line and a trigger, which is the Fisher value one candle earlier.
- The article says extreme readings can last a long time, so we wait for a change of direction.
- A cross upward while the line is below minus 1.5 is marked HIGHER.
- A cross downward while the line is above plus 1.5 is marked LOWER.
- Extreme levels differ by instrument, so adjust the level input and test on a Practice balance.
Limitations. The article notes that extremes depend on the instrument and change over time, and the indicator can stay extreme for long periods, so 1.5 is only a starting level. Because the trigger is the previous value, the cross is the same as the first turn of direction and can happen often in noisy markets. Test on the Practice balance before risking real funds.
Complete source code
The download and this preview resolve to the same reviewed file. SHA-256: 8304698b1f4c83dee212dcd31a5699dabee0b94b945722ee15b0b9e9bebf3dbe
-- SPDX-License-Identifier: MIT
-- IQOptionWiki QCS Library
-- IQOW Fisher Transform Reversal v1.0.0
--
-- Ehlers Fisher Transform turns price into a series that swings clearly at
-- turning points. The trigger line is the Fisher value one candle earlier. A
-- cross of the two lines inside an extreme zone is read as a possible turn,
-- the confirmation the related article describes. Formula follows the official
-- QCS Ehlers Fisher Transform; the value is clamped to avoid division by zero.
--
-- HIGHER: Fisher crosses above its trigger while below -1.5.
-- LOWER: Fisher crosses below its trigger while above +1.5.
--
-- 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 Fisher Transform Reversal",
short_name = "IQOW FISHER",
overlay = false
}
input_group {
"1. Fisher Transform",
fisher_period = input (10, "Period", input.integer, 3, 100),
extreme_level = input (1.5, "Extreme level (+/-)", input.double, 0.5, 4, 0.1, false)
}
input_group {
"Display and advice",
lines_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",
fisher_color = input { default = "#2CAC40", type = input.color },
trigger_color = input { default = "#DB4931", type = input.color },
level_color = input { default = rgba(255, 255, 255, 0.30), type = input.color },
line_width = input { default = 1, 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 }
}
-- Fisher Transform (official formula): normalise hl2 to -1..1, smooth, then
-- apply the inverse hyperbolic tangent and smooth again.
highest_hl2 = highest (hl2, fisher_period)
lowest_hl2 = lowest (hl2, fisher_period)
normalized = 2 * (hl2 - lowest_hl2) / max (highest_hl2 - lowest_hl2, 1e-10) - 1
smoothed = ema (normalized, 5)
-- Clamp just inside +/-1 so log () stays finite on flat or extreme candles.
clamped = iff (smoothed > 0.999, 0.999, iff (smoothed < -0.999, -0.999, smoothed))
fisher = ema (log ((1 + clamped) / (1 - clamped)), 3)
fisher_trigger = fisher [1]
local fisher_now = get_value (fisher, nil)
local fisher_before = get_value (fisher [1], nil)
local fisher_before_that = get_value (fisher [2], nil)
local data_is_ready = fisher_now ~= nil and fisher_before ~= nil and fisher_before_that ~= nil
-- Cross event: Fisher moves through the trigger (the previous Fisher value).
local crosses_up = data_is_ready and fisher_before <= fisher_before_that and fisher_now > fisher_before
local crosses_down = data_is_ready and fisher_before >= fisher_before_that and fisher_now < fisher_before
higher_setup = conditional (crosses_up and fisher_now <= -extreme_level)
lower_setup = conditional (crosses_down and fisher_now >= extreme_level)
-- 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 lines_visible then
hline (extreme_level, "Upper extreme", level_color, 1)
hline (0, "Zero", rgba (255, 255, 255, 0.15), 1)
hline (-extreme_level, "Lower extreme", level_color, 1)
plot (fisher_trigger, "Fisher trigger", trigger_color, line_width)
plot (fisher, "Fisher", fisher_color, line_width)
end
if signals_visible then
plot_shape (
confirmed_higher,
"FISHER HIGHER",
shape_style.triangleup,
shape_size.small,
higher_color,
shape_location.bottom,
-1,
"HIGHER",
signal_text_color
)
plot_shape (
confirmed_lower,
"FISHER LOWER",
shape_style.triangledown,
shape_size.small,
lower_color,
shape_location.top,
-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 reversal scripts
- Reversal
- On price
- Intermediate
Morning Evening Star RSI
Marks morning star and evening star candle patterns when RSI on the middle candle was at a low or high zone. RSI helps check that the pattern follows a push in the opposite direction.
Indicators: Morning and evening star candles · RSI (14, 40/60)
- Reversal
- Own panel
- Beginner
RSI Law
Marks the candle on which a short RSI(5) closes back across the 30 or 70 line after an excursion into the extreme zone. This is the RSI Law rule from the related article, shown as completed-candle markers.
Indicators: RSI (5, 30/70)
- Reversal
- On price
- Beginner
STARC Bands Reversal
Marks a bullish or bearish candle that closes back inside the STARC Bands after the previous close was outside them. The bands show where price is stretched in ATR terms.
Indicators: STARC Bands (SMA 6, ATR 15, x2)
Download all 74 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.