MotiveWave Docs
MotiveWave.com
  • User Guide
    • Welcome
    • Quick Start Guide
      • Getting Started
      • Installation
      • Customization Options
      • Advanced Features
      • Troubleshooting and Support
      • Next Steps
    • Console Overview
      • Preferences
      • Changing the Look and Feel
      • Desktops
      • Quote Sheets
      • Backup and Restore
      • Repository
      • Email Configuration
      • Docking Framework Guide
        • Introduction
        • Stations
        • Pages
        • Layouts
        • Customization
    • Accounts Panel
      • Simulated Account
      • Commissions
    • Alerts
    • Charts
      • Settings
      • Chart Spacing
      • Bar Sizes
      • Importing Data
      • Exporting Data
      • Birds Eye View
      • Cursor Data
      • Depth Of Market
      • Chart Labels
      • News
      • Watermark
      • Scaling
      • Analyses
      • Ratios
      • Time and Price Guides
      • Percent Change Charts
      • Software Development Kit
      • Lock Studies
      • Lock Scroll
      • Study Templates
      • Linking Charts
      • Working With Chart Windows
      • Ticker Tape
      • Chart Trading
      • Data Export Groups
      • Analyses Guide
        • Introduction
        • Managing Analyses
        • Sharing Analyses
    • Components
    • Depth Of Market
    • Elliott Wave
    • Hurst Cycles
      • Introduction
      • Study Overview
      • Using the Hurst Cycle Study
    • Instruments
      • Custom Instruments
    • Option Chain
    • Order Flow
      • Introduction
      • Time Price Opportunity (TPO) Study
      • Volume Imprint
      • Depth of Market
      • Time and Sales
      • Delta Volume
      • Cumulative Delta
      • Bid/Ask Volume
      • Speed of Tape
      • DOM Power
      • Order Heatmap
      • Big Trades
      • Speed Gauges
      • Components
    • Pages
    • Preferences
      • General
      • Theme
      • Chart
      • Toolbar
      • Sounds
      • Ratios
      • Elliott Wave
      • Harmonics
      • Historical Data
      • Orders
      • Alerts
      • Email
      • Trade History
      • Buy/Sell
    • Replay Mode
    • Scanner
      • Scanner
      • Creating a Scan
      • Executing a Scan
      • Editing a Scan
      • Elliott Wave Scanner
      • Harmonic Scanner
      • Study Scanner
    • SDK Programming Guide
      • Preface
      • Change History
      • Introduction
      • Fundamental Classes
      • Overlay Example
      • Study Plot Example
      • Drawing Figures
      • Signals
      • Tick Data
      • Strategies
      • Logging
      • Internationalization
      • Deployment
      • Environment Setup
    • Shortcuts
    • Strategies & Backtest
      • Strategy Back Testing
      • Creating a Strategy Analysis
      • Strategy Analysis
      • Strategies
    • Studies
    • Time and Sales
    • Tool Bar
    • Trade Report
    • Watch List
    • Workspaces
  • Release Notes
    • Release Notes
    • What's New In Version 6.5
    • What's New in Version 6.4
    • What's New in Version 6.3
    • What's New in Version 6.1
    • What's New in Version 6.0
  • Knowledge Base
    • Getting Started
      • Add a Symbol to a Watch List
      • Create a New Page
      • Create a New Workspace
      • Free Data Sources
      • Linux Installation
      • Resize Console Panels
      • Set Up a Simulated Account
      • Does MotiveWave Come With Data?
      • Can MotiveWave Be Used on Multiple Computers?
      • Futures Symbol Table
    • Connection
      • Connection Details
      • Add a Connection to a Workspace
      • Rithmic - Connection Issues and Troubleshooting
      • Connect MotiveWave to R|Trader Pro Gateway
      • GAIN Connection
      • Indian Market Connections
      • Interactive Brokers Connection
        • Troubleshooting Interactive Brokers Connection
        • Historical Data is Slow with Interactive Brokers
      • CQG Symbology
      • TD Ameritrade Search
      • Rithmic Eurex Symbology
      • Computer Sleep Mode
      • IQFeed Data
      • Another Instance of MotiveWave Is Using License Key
    • Workspace
      • Add a Connection to a Workspace
      • Create a New Workspace
      • Create a Workspace Backup
      • Restore a Workspace Backup
      • Switch Connections in a Workspace
      • Workspaces Not Showing Up
    • Charts
      • Adjust for a Stock Split
      • Assign Trading Hours to an Instrument
      • Component and Study Visibility
      • Different Charts for the Same Instrument
      • Make Studies Stick to a Chart
      • Trend Lines Don't Line up on Different Bar Sizes
      • Use a Display Mask
      • Create Tick, Range, PnF, or Renko Chart
      • Clicking on the Tab of One Chart Changes Tab of Other Charts
      • Charts Stopped Streaming Data
      • Charts Show Incorrect Historical Data
      • Time Range Measurements Are Incorrect
      • Limited Tick Data on Charts
      • Set Start Time for Chart Bars
      • View List of Studies and Components on Chart
      • Show ETH or Extended Data
    • Trading
      • Position Average Is Changing Overnight
      • Execute Trades on Another Account
    • General
      • Change Themes
      • Define Trading Hours
      • Futures Contract Backfill
      • Reset the Console Layout
      • Set a Default Account
      • Set Up a Repository
      • Set Up Gmail for Email Alerts
      • Set Up iCloud Mail for Email Alerts
      • MotiveWave Covers Windows Taskbar
      • Limit Instruments in Quick Search
      • Can’t See My Menu Anymore
      • Trade Report Is Incorrect
    • Study
      • Component and Study Visibility
      • Order Heatmap Study Not Showing
      • Forex With Volume Related Studies
      • Add a Custom Study
      • Volume Imprint or TPO Overlap
      • Use Real Values
    • Elliott Wave
      • Elliott Wave Data Window vs Start Date
      • Elliott Wave Functionality
      • Show Multiple Elliott Wave Ratios
      • Stacked Wave Labels
    • Scan
      • What Do the Scanner Results Fair, Good, Etc. Mean?
    • SDK
      • Create a Custom Study or Strategy
    • Optimize - Backtest
      • Backtesting Limitations
    • Support
      • Access Log Files
      • Active Session Exists
      • Create a Workspace Backup
      • Find My License Key and Edition
      • Minimum System Requirements
      • MotiveWave Extensions Directory
      • Uninstall MotiveWave
      • Data Loss
      • Trendlines Shift on Nonlinear Charts
      • Slow Application Performance
    • Error Messages
      • Forex.com - Error Placing Order: 75
      • Binance - Connection Failed: Invalid API Key
      • Binance Futures - Unable to load listen keys
      • IQFeed - Error: Index 1 out of bounds for length 1
      • IQFeed - Connection Failed
      • State Error
      • Error Placing Order(s)
    • Purchase
      • Upgrade from a Lease to a Purchased License
      • Upgrade from a Lower Edition Purchased License to a Higher Edition Purchased License
      • Recently Purchased Where Is My License Key?
      • PayPal Payments
      • How Do I Cancel My Lease?
      • Are Updates to the Software Free?
    • FAQ
      • Can I Add Commentary
      • Can I Have a Simulated and a Live Trading Account
      • Can I Have More Than One Broker Account
      • Can I Save My Analysis
      • Can I Trade from the Chart
      • Can I Use MotiveWave on Multiple Computers
      • Does MotiveWave Support macOS
      • Does MotiveWave Support Multiple Computer Screens
      • How Do I Log in to MotiveWave
      • How Do I Make Point & Figure and Hybrid Renko Charts
      • How Do I Position and Size the Chart Windows on a Specific Screen
      • How Do I Save My Charts
      • How Do I Sync MotiveWave Between Two Computers
      • What Instruments Does MotiveWave Support
      • What Is Compact Mode for Chart Windows
      • Where Are the Chart Tools
  • Video Tutorials
    • Product Demos
    • Startup and Installation
    • Workspaces
    • Broker and Data Feed Connections
    • Overviews
    • General Configuration
    • Configuring Preferences
    • Charts
    • Analyses vs Alternate Analyses
    • Studies and Strategies
    • Trading
    • Alerts
    • Replay Mode
    • Scanners
    • Fibonacci
    • Harmonics
    • Elliott Wave
    • Webinars
    • Third Party Webinars
  • Studies
    • A - B
    • C - D
    • E - F
    • G - H
    • I - J
    • K - L
    • M - N
    • O - P
    • Q - R
    • S - T
    • U - V
    • W - X
    • Y - Z
Powered by GitBook
On this page
  • Ichimoku Kinko Hyo
  • Information Ratio
  • Inverse Fisher Transform
  • Inverse Fisher Cyber Cycle
  • Instantaneous Cycle Period Measurement
  • Instrument Graph
  • Instrument Ratio
  • Intraday Momentum Index (IMI)
  • JRC Fractal Dimension
  1. Studies

I - J

PreviousG - HNextK - L

Last updated 5 months ago

Disclaimer: The information provided on this page is strictly for informational purposes and is not to be construed as advice or solicitation to buy or sell any security. Please see our .

How to access the studies in MotiveWave:

Go to the top menu, choose Study>Study Group>Study Name

or Go to the top menu, choose Study>All Studies> Start typing in the study name until you see it appear in the list> Click on the study name> Click OK.

Ichimoku Kinko Hyo

Ichimoku Kinko Hyo is a Japanese charting technique developed before World War II. Its goal is to portray at a glance where the price is heading and when will be the right time to enter or exit the market. Translated, Ichimoku Kinko Hyo means ‘a glance at an equilibrium chart’. The user may change the period lengths. This indicator’s definition is further expressed in the condensed code given in the calculation below.

How To Trade Using Ichimoku Kinko Hyo

If the Tenkan-Sen (TS) line crosses above the Kijun-Sen (KS) line, a buy signal will be generated. Conversely, if the TS line crosses below the KS line, a sell signal will be given.

Calculation

//period1 = user defined, default is 9 //period2 = user defined, default is 26 //period3 = user defined, default is 52

highest = highest(index, period, HIGH);
lowest = lowest(index, period, LOW);
TS = (highest+lowest)/2);
//Kijun-Sen
highest = highest(index, period2, HIGH);
lowest = lowest(index, period2, LOW);
KS = (highest+lowest)/2;
// Chikou Span
CS = getClose(index+period2)); //shift backward by period2
//Senkou Span B
highest = highest(index, period3, HIGH);
lowest = lowest(index, period3, LOW);
SSB[index+period2]=(highest+lowest)/2); //shift Forward by period2
//Senkou Span A
SSA[index+period2] = (TS+KS)/2; //shift forward by period2
//Signals
buy = crossedAbove(TS, KS);
sell = crossedBelow(TS, KS);

Information Ratio

The Information Ratio (IR) is also known as the Appraisal Ratio. It is designed to evaluate how well an investor is compensated for the risk taken. The higher the Information Ratio the better the instrument’s performance. The main ingredients are the current price and a prior price which are adjusted with the user-defined benchmark return. The average and standard deviation (SD) are calculated; and the IR is the average, minus the benchmark return, divided by the SD. The user must select linear bars but may change the input (close), period length and benchmark value. This indicator’s definition is further expressed in the condensed code given in the calculation below.

How To Trade Using the Information Ratio

The Information Ratio may be used to evaluate an instrument’s performance. No trading signals are calculated.

Calculation

//input = price, user defined, default is close //period = p1, user defined, default is 30 //benchmark return = bmk, user defined, default is 5 percent //sma = simple moving average, sdDev = standard deviation //index = current bar number

BarSize bar = getBarSize();
if (bar.getType() == BarSizeType.LINEAR) barMin = bar.getInterval();
else return;
minPerYr = 60*24*30*12;
priorP = price[index-p1];
bmk = bmk /100;  //convert percent to decimal
barsPerYr = minPerYr/barMin;
bench = Math.pow((1 + (bmk)), p1/barsPerYr) - 1; //minium acceptable return/period compounded 
ret = (price/priorP)-1;
av  = sma(index, p1, RET);
std = sdDev(index, p1, RET)[0];
Plot: info = (av - bench) / std;

Inverse Fisher Transform

The Inverse Fisher Transform (IFISH) was authored by John Ehlers. The IFISH applies some math functions and constants to a weighted moving average (wma) of the relative strength index (rsi) of the closing price to calculate its oscillator position. The user may change the input (close) and period lengths. This indicator’s definition is further expressed in the condensed code given in the calculation below.

How To Trade Using The Inverse Fisher Transform

Adjust the top and bottom guides to control the quantity and quality of the trading signals. IFISH values above .5 are considered to be overbought and therefore offer an opportunity to sell. IFISH values below -.5 are considered oversold and present an opportunity to buy. If the IFISH peaks above the top guide a sell signal will be generated. Conversely, if the IFISH troughs below the bottom guide a buy signal will be given. The 0 line divides the bulls above from the bears below.

Calculation

//input = price, user defined, default is closing price //method = moving average (ma), user defined, default is WMA //period1 = p1, user defined, default is 5 //period2 = p2, user defined, default is 9 //exp = function, returns Euler’s number (e) raised to power of its argument //av = average, index = current bar number

rsi = rsi(p1, input)[0];
value1 = .1 * (rsi - 50);
av = ma(method, index, p2, VALUE1);
Plot: ifish = (Math.exp(2*av) - 1) / (Math.exp(2*av) + 1);
 //Signals
prevI = ifish[index-1];
highSell = ifish for last sell signal, reset to max_negative at each  buy signal;
lowBuy = ifish for last buy signal, reset to max_positive at each sell signal;
sell = ifish moreThan topGuide  AND prevI moreThan ifish AND (ifish moreThan highSell);
buy =  ifish lessThan bottGuide AND prevI lessThan ifish AND (ifish lessThan lowBuy);

Inverse Fisher Cyber Cycle

The Inverse Fisher Cyber Cycle (ICYCLE) was authored by John Ehlers. The ICYCLE incorporates the current price, three previous prices, a user-defined alpha factor, Euler’s number and feedback to arrive at its value. The user may change the input (midpoint) and alpha. This indicator’s definition is further expressed in the condensed code given in the calculation below.

How To Trade Using The Inverse Fisher Cyber Cycle

Adjust the top and bottom guides to control the quantity and quality of the trading signals. If the ICYCLE peaks above the top guide a sell signal will be generated. Conversely, if the ICYCLE troughs below the bottom guide a buy signal will be given. The 0 line divides the bulls above from the bears below.

Calculation

//input = price, user defined, default is midpoint //alpha = user defined, default is .07 //exp = function, returns Euler’s number (e) raised to power of its argument //prev = previous, index = current bar number

prevP1 = price[index-1];
prevP2 = price[index-2];
prevP3 = price[index-3];
smth = (price + 2*prevP1 + 2*prevP2 + prevP3) / 6;
default = (price - 2*prevP1 + prevP2) / 4;
prevS1 = smth[index-1];
prevS2 = snth[index-2];
prevC1 = ifNull(default, cycle[index-1]);
prevC2 = ifNull(default, cycle[index-2]);;
Plot1: cycle = (1 - .5*alpha)*(1 - .5*alpha) * (smth - 2*prevS1 + prevS2)+2*(1 - alpha)*prevC1 - (1- alpha)*(1-alpha)*prevC2;
Plot2: icycle = 100 * (Math.exp(2*cycle) -1) / (Math.exp(2*cycle) + 1);
 //Signals
prevI = icycle[index-1];
highSell = icycle for last sell signal, reset to max_negative at each  buy signal;
lowBuy = icycle for last buy signal, reset to max_positive at each sell signal;
sell = (icycle moreThan topGuide) AND (prevI moreThan icycle) AND (icycle moreThan highSell);
buy =  (icycle lessThan bottGuide) AND (prevI lessThan icycle) AND (icycle lessThan lowBuy);

Instantaneous Cycle Period Measurement

The Instantaneous Cycle Period Measurement was authored by John Ehlers; it is built upon his Hilbert Transform Indicator. The user may change the input (midpoint) and Hilbert period length. This indicator’s definition is further expressed in the condensed code given in the calculation below.

How To Trade Using the Instantaneous Cycle Period Measurement

The Instantaneous Cycle Period measurement may be used in conjunction with other indicators. No trading signals are calculated in this study.

Calculation

//input = price, user defined, default is midpoint price //Hilbert period = user defined, default is 7 //quad = quadrature = imaginary part of complex number //inPhase = real part of complex number //index = current bar number

iMult = .635;
qMult = .338;

priorPrice = price[index-period];
//v1 = detrend price
v1 = price - priorPrice;

v2 = v1[index-2];      
v4 = v1[index-4];      

inPhase3 = inPhase[index-3];      
quad2 = quad[index-2];      

//Hilbert transform complex number components, inPhase (real part), quad (imaginary part)
inPhase = 1.25 * (v4 - (iMult*v2) + (iMult*inPhase3));
quad = v2 - (qMult*v1) + (qMult*quad2);

prevInPhase = inPhase[index-1];
prevQuad = quad[index-1];
if (Math.abs(inPhase + prevInPhase) moreThan 0) 
  phase = Math.atan(Math.abs((quad+prevQuad)/(inPhase+prevInPhase))); 
endif
if (inPhase lessThan 0 AND quad moreThan 0) phase = 180 - phase;
if (inPhase lessThan 0 AND quad lessThan 0) phase = 180 + phase;
if (inPhase moreThan 0 AND quad lessThan 0) phase = 360 - phase;
      
prevPhase = phase[index-1];
deltaPhase = prevPhase - phase;
      
if (prevPhase lessThan 90 AND phase moreThan 270) deltaPhase = 360 + prevPhase - phase;
if (deltaPhase lessThan 1) deltaPhase = 1;
if (deltaPhase moreThan 60) deltaPhase = 60;
      
instPeriod = 0;
for (int count = 0; count lessThan 51; count++)
    priorDP = deltaPhase[index-count];
    v4 = v4 + priorDP;
    if (v4 moreThan 360 AND instPeriod == 0) instPeriod = count;
endFor
   
if (instPeriod == 0) 
    instPeriod = instPeriod[index-1];
endIf
prevPeriod = period[index-1];
period = (.25 * instPeriod) + (.75 * prevPeriod);
Plot: period;

Instrument Graph

Instrument Graph displays a chosen instrument in a separate graph.

Instrument Ratio

Instrument Ratio computes the ratio between two instruments and displays it as a graph. The ratio is used to gauge the relative performance between two instruments, whether one instrument is outperforming or underperforming to the other, therefore, supporting trading decisions.

The calculation for this ratio is as follows: Instrument Ratio = Price of Instrument A / Price of Instrument B. If the ratio increases (uptrend), instrument A outperforms instrument B. If the ratio decreases (downtrend), instrument B outperforms instrument A.

The multiplier of an instrument ratio is a variable that can be customized to influence the trading strategy and risk exposure. Users can adjust the multipliers to generate different values for specific needs or preferences. Multiplier is useful when users want to take into account the differences in the unit sizes or measurements of two instruments.

How to trade using Instrument Ratio

The Instrument Ratio can be used in conjunction with other indicators.

If the ratio line is going upward, it indicates a buying opportunity for instrument A and a selling opportunity for instrument B. Conversely, if the ratio line is decreasing, traders might consider selling instrument A and buying instrument B.

Intraday Momentum Index (IMI)

The formula for IMI is as follows:

Where: In "n" chosen day (usually 14 days),

Gains = Closing price - Opening price, on Up Days = Close > Open;

Losses = Opening price - Closing price, on Down Days = Close < Open.

If the IMI is greater than 70, the market is considered overbought. If the IMI is less than 30, the market is experiencing oversold conditions.

How to trade using the Intraday Momentum Index (IMI)

Adjust the top and bottom guides to control the quantity and quality of the trading signals. IMI values above 70 are considered to be overbought and therefore offer an opportunity to sell. IMI values below 30 are considered oversold and present an opportunity to buy.

MotiveWaveâ„¢ also provides the IMI graph with crossover lines. If the IMI line crosses above the Signal line, it indicates a bullish signal and might be a signal for buying. Conversely, if the IMI crosses below the Signal line, it represents a bearish signal and might be an opportunity for selling. The 50 line divides the bulls above from the bears below.

Traders can combine the crossovers and overbought/oversold conditions to generate more concise trading decisions. Particularly, a crossover that is in the overbought zone (above 70) illustrates a strong sign to sell. Meanwhile, if the crossover is in the oversold zone (below 30), it might be a reliable signal for traders to buy.

The IMI can be used in conjunction with other trading indicators, such as moving averages, trendlines or volume methods.

JRC Fractal Dimension

JRC Fractal Dimension was authored by Mark Jurik of Jurik Research. The JRCFD uses highest, lowest, maximums, minimums, logarithms, feedback and finally, a Simple Moving Average to fulfill its fractal dimension. The user may change the input (close), size, count, smooth period length and method (SMA). This indicator’s definition is further expressed in the condensed code given in the calculation below.

How To Trade Using JRC Fractal Dimension

JRC Fractal Dimension may be used in conjunction with other indicators. No trading signals are given.

Calculation

//input = price, user defined, default is close //size = user defined, default is 20 //count = user defined, default is 5 //smoothP = user defined, default is 5 //method = moving average (ma) = user defined, default is SMA //prev = previous, index = current bar number //log = natural logarithm

wind1 = (count - 1) * size;
wind2 = count * size;
nlog = Math.log(count);
highest = highest(index, size, high);
lowest = lowest(index, size, low);
priorC = price[index-size];
smallRange = Math.max(priorC, highest) - Math.min(priorC, lowest);
highest = highest(index, wind2, high);
lowest = lowest(index, wind2, low);
priorC = price[index-wind2];
bigRange = Math.max(priorC, highest) - Math.min(priorC, lowest);
prevSS = ifNull(smallRange, smallSum[index-1]);   //returns smallRange on first try
priorSR = smallRange[index-wind1];
smallSum = prevSS + smallRange - priorSR;
if(smallSum lessThan 0) return;
temp = Math.log(bigRange/(smallSum/wind1));
fd = 2 - (temp / nlog);
Plot: jrcfd = ma(method, index, smoothP, fd);

Intraday Momentum Index (IMI) was developed by Tushar Chande and discussed in his book "The New Technical Trader", in 1994. The index combines elements of the in conjunction with the candlestick analysis. Similar to the RSI, the IMI is an oscillator that tracks price momentums and helps identify overbought/oversold conditions. But as indicated in its name, IMI incorporates the intraday price movements (opening and closing prices in a day), rather than relying solely on the closing prices. Therefore, this indicator is particularly suitable for short-term or day traders.

See also Information Ratio
See also article by John Ehlers
See also article by John Ehlers
Click here for more information on Ehler’s indicators.
Risk Disclosure and Performance Disclaimer Statement
Click here for more information on the Hilbert Transform Indicator
Relative Strength Index (RSI)