Cycle Channel Oscillator [LazyBear]

Here's an oscillator derived from my previous script, Cycle Channel Clone (

There are 2 oscillator plots - fast & slow. Fast plot shows the price location with in the medium term channel, while slow plot shows the location of short term midline of cycle channel with respect to medium term channel.

Usage of this is similar to %b oscillator. The slow plot can be considered as the signal line.

Bar colors can be enabled via options page. When short plot is above 1.0 or below 0, they are marked purple (both histo and the bar color) to highlight the extreme condition.

This makes use of the default 10/30 values of Cycle Channel, but may need tuning for your instrument.

More info:

List of my free indicators:
List of my app-store indicators: (More info:

List of my free indicators:
List of my indicators at Appstore:

TradingViewの精神に則り、このスクリプトの作者は、トレーダーが理解し検証できるようにオープンソースで公開しています。作者に敬意を表します!無料で使用することができますが、このコードを投稿で再利用するには、ハウスルールに準拠する必要があります。 お気に入りに登録してチャート上でご利用頂けます。



// @author LazyBear 
// List of my public indicators:
// List of my app-store indicators: 
study("Hurst Cycle Channel Clone Oscillator [LazyBear]", shorttitle="HCCCO_LB", overlay=false)
scl_t =  input(10, title="Short Cycle Length?")
mcl_t =  input(30, title="Medium Cycle Length?")
scm =  input(1.0, title="Short Cycle Multiplier?")
mcm =  input(3.0, title="Medium Cycle Multiplier?")
src=input(close, title="Source")
scl = scl_t/2, mcl = mcl_t/2
scm_off = scm*atr(scl)
mcm_off = mcm*atr(mcl)
scl_2=scl/2, mcl_2=mcl/2
sct =  nz(ma_scl[scl_2], src)+ scm_off
scb =  nz(ma_scl[scl_2], src)- scm_off
mct =  nz(ma_mcl[mcl_2], src)+ mcm_off
mcb =  nz(ma_mcl[mcl_2], src)- mcm_off
ul=plot(1.0, title="UpperLine", color=gray), ml=plot(0.5, title="MidLine", color=gray), ll=plot(0.0, title="LowerLine", color=gray)
fill(ll,ml,color=red), fill(ul,ml,color=green)
plot(omed>=1.0?omed:na, histbase=1.0, style=histogram, color=purple, linewidth=2, title="MediumCycleOB")
plot(omed<=0.0?omed:na, histbase=0.0, style=histogram, color=purple, linewidth=2, title="MediumCycleOS")
plot(oshort>=1.0?oshort:na, histbase=1.0, style=histogram, color=purple, linewidth=2, title="ShortCycleOB")
plot(oshort<=0.0?oshort:na, histbase=0.0, style=histogram, color=purple, linewidth=2, title="ShortCycleOS")
plot(oshort, color=red, linewidth=2, title="FastOsc")
plot(omed, color=green, linewidth=2, title="SlowOsc")
ebc=input(false, title="Enable bar colors")