Jump to content

Welcome to the new Traders Laboratory! Please bear with us as we finish the migration over the next few days. If you find any issues, want to leave feedback, get in touch with us, or offer suggestions please post to the Support forum here.

  • Welcome Guests

    Welcome. You are currently viewing the forum as a guest which does not give you access to all the great features at Traders Laboratory such as interacting with members, access to all forums, downloading attachments, and eligibility to win free giveaways. Registration is fast, simple and absolutely free. Create a FREE Traders Laboratory account here.

simterann22

Gapless Squeeze

Recommended Posts

Great indicators simterann22. Is there any way to code a gapless RSI inside of gapless Bollinger Bands so they're in the same code and both plot on the right axis? I can scale them in the same panel on my charts, but they're skewed and aren't correctly plotting because I have to plot 1 or the other as no axis if they're together. If I put them together and try to plot them both on the right axis, it just shows a line across the page. Guess they need to be put in the same code originally to plot together accurately. Thanks again for your terrific indicators and help.

 

Curtis

Share this post


Link to post
Share on other sites

I assume you are trying to plot the RSI BBs, not the actual price data BBs? If so, yes, you need to code them together as the BBs will be plotted relative to the RSI value not to price data.

 

Try this code:

 

Inputs:
	Price(Close),
	RSILength(14),
	Oversold(30),
	Overbought(70),
	SDev(1.5),
	AvgLength(14);
Vars:
	MyRSI(0),
	RSIBB(0),
	RSIAvg(0),
	BBsdev(0),
	Upper_Band(0),
	Lower_Band(0);

	// gapless day transitions - John McCormick May 2008

Vars:
RelO(0),		// Relative Open
RelH(0),		// Relative High
RelL(0),		// Relative low
RelC(0),		// Relative Close
gap(0),			// the opening gap (modified by the gap coefficient)
GapCoef(1.0),	// Gap Coefficient
Accum(0);		// The sum of all the daily gaps

if currentsession(0)<>currentsession(0)[1] or date<>date[1] then 
 begin
gap=GapCoef*(O-C[1]);
Accum=Accum+gap;   
 end;

if BarType<=0 or BarInterval<60 then  //Valid only for Tick or Intraday	under 60min 

begin

	RelO	=	O-Accum;
	RelC	=	C-Accum;
	RelH	=	H-Accum;
	RelL	=	L-Accum;

	end

	else begin

	RelO	=	O;
	RelC	=	C;
	RelH	=	H;
	RelL	=	L;

end;

// Gapless - end

Var: GL_Price(0);

GL_price = RelC;
If Price=open then GL_price = RelO;
If Price=high then GL_price = RelH;
If Price=low then GL_price = RelL;

MyRSI=RSI(GL_Price,RSILength);
RSIAvg=Xaverage(MyRSI,AvgLength);
BBsdev=StandardDev(MyRSI,AvgLength,1);

Upper_Band = ( RSIAvg + Sdev * BBsdev );
Lower_Band = ( RSIAvg - Sdev * BBsdev );

Plot1(MyRSI,"MyRSI");
Plot2(RSIAvg,"RSIAvg");
Plot3(Upper_Band,"UBand");
Plot4(Lower_Band,"LBand");
Plot5(Oversold,"Oversold");
Plot6(Overbought,"Overbought");

5aa70f019e38c_@RSIBBGapless.thumb.jpg.10ee79ed326c369922801cd7784ed102.jpg

@RSI&BB Gapless.txt

Share this post


Link to post
Share on other sites

Hi simterann22!

I tried to realize a RadarScreen indicator of the Gapless Squeeze in order to receive a "Long" "Short" and "Flat" signals.. but I'm a really beginner. Could you help me? Thanks, kmarinelli.

Share this post


Link to post
Share on other sites
Hi simterann22!

I tried to realize a RadarScreen indicator of the Gapless Squeeze in order to receive a "Long" "Short" and "Flat" signals.. but I'm a really beginner. Could you help me? Thanks, kmarinelli.

 

Kmarinelli, first of all I am less than 3 months old in EL coding. I have simply learned by studying other coder's works and reading the reserved word and function descriptions in the help menu. The best way to learn is by observation and a desire to understand how code works. So my suggestion is to read the code below and also read the free TS pdf files on their website on EL.

 

Here is a basic Squeeze RadarScreen without the 'bells and whistles' I personally use.....but this is just as good. I have basically modified Blu-Ray's BR_Squeeze RadarScreen to suit this squeeze. I have not allowed for the Gaussian or Countertrend options as I do not really use them....you're on your own if you want to modify it. Why not try? :)

 

You can change the EL code to say "flat' in place of 'squeeze' if you like, just simply replace the text as such in the code.

 

Make sure you format the indicator...... General>Load additional data for accumulative calculations (say 100)....and Style>ago>number> reduce decimal to zero.

This version should work okay, though I have not fully tested it.

 

 

Enjoy.

@SK_SQUEEZE RADAR SCREEN.ELD

Gapless Squeeze RadarScreen.txt

Share this post


Link to post
Share on other sites

Gapless squeeze is a great addition to the indicator.

 

Signal line appears to operate different from the version I have been using (pbf). Can anyone elaborate on the application this particular signal line is based on... it appears to go red in consolidations/transitions.

 

Thanks,

 

snowbird

Share this post


Link to post
Share on other sites

That's correct. As PBF say on their website theirs isn't really like the traditional squeeze ie. the BB Squeeze, it just looks similar. As for the BB Squeeze, the 'Squeeze' happens when the Bollinger Bands enter into the Keltner Channel....signalling a quiet period....thus the red signal. That's the time to get ready to see a momentum breakout ie. BB breakout. If you change BBSqueeze to "False" then that should give you a PBF-like Gaussian 'squeeze' as per the original screen shot.

Share this post


Link to post
Share on other sites

Ahh... that it does! excellent explanation.

 

Another thing I noticed as I've looked at the differences... it appears that with the BB momentum BO signal (BB SQ = true) alert, that if the close of the BO bar is outside the BB/Keltner channel, it often pays to wait for a retrace back within the channel towards the Keltner center line before buying/selling the BO in the direction of the squeeze. This will often get you in at a closer entry to what the PBF alert signal would have, but with many fewer false signals/whipsaws.

 

snowbird

Share this post


Link to post
Share on other sites

Thanks Snowbird for the input. I do not have the PBF indicators. Though I am impressed with their videos. I didn't see a lot of difference between theirs and the 'freeware' indicators on this site (Blu-Ray's) and the TradeStation forums. I get tired of paying good money for indicators that are just tarted up versions. eg. I believe the iTunnel is just a Keltner Channel (set at 1?). However, I've read on PBFs site that they show you, once you buy their indicators, how to use them effectively......That, you don't always get with a free indicator :( . As for the squeeze tip....thanks..... that does make sense. With a squeeze alert it's easy to get sucked in right away and chase the market.

 

Cheers.

Share this post


Link to post
Share on other sites

fyi to all......I tested the "true" & "false" inputs.....found the "false" input to be a better read in the turns; also changes the inputs to "green/dark green", from blue/dark blue....to see betta; also change the histogram to a "line"= easier for me to see in the turns & the zl cross too. Use it on a 116 tick chart (my trade-entry/mgm chart), with a 305tk chart anchor, & a 89tk chart lead chart to see the beginning of the turns. Found it to be very usefull with my MACD/Stoch SLow in level below it for day trading the ES?NQ emini's. Hope that info is of use.... :)

 

ajax

Share this post


Link to post
Share on other sites

simterann22, Thanks for your brilliant works

 

could you please make gapless Hull moving average ?

 

belows are function and indicator

 

I attached gapless addin but it seems not work

 

Type : Function, Name : jtHMA

{jtHMA - Hull Moving Average Function}
{Author: Atavachron}
{May 2005}

Inputs: price(NumericSeries), length(NumericSimple);
Vars: halvedLength(0), sqrRootLength(0);

if ((ceiling(length / 2) - (length / 2)) <= 0.5) then
halvedLength = ceiling(length / 2)
else
halvedLength = floor(length / 2);

if ((ceiling(SquareRoot(length)) - SquareRoot(length)) <= 0.5) then
sqrRootLength = ceiling(SquareRoot(length))
else
sqrRootLength = floor(SquareRoot(length));

Value1 = 2 * WAverage(price, halvedLength);
Value2 = WAverage(price, length);
Value3 = WAverage((Value1 - Value2), sqrRootLength);

jtHMA = Value3;

Type : Indicator, Name : jtHMA

{jtHMA - Hull Moving Average Indicator}
{Author: Atavachron}
{May 2005}

Inputs: price(Close), length(21),
zeroLine(0.0), zeroVisible(false),
upColour(Blue), downColour(Red), colourDeltaBar(1);

Value1 = jtHMA(price, length);

Plot1(Value1, "jtHMA");

If ZeroVisible = true then
Plot2(zeroLine, "Zero");

{ Color criteria }
if (Value1 > Value1[1]) then
SetPlotColor[colourDeltaBar](1, upColour)
else if (Value1 < Value1[1]) then
SetPlotColor[colourDeltaBar](1, downColour);

Edited by duhhhh

Share this post


Link to post
Share on other sites

Hi duhhh,

 

I do not use Tradestation anymore so I have no way of testing it for you. However, the best thing you can do is download the EMA or Bollinger Band ELDs and transpose the Gapless code to the Hull.

*Just remember that whenever there is 'Price' in the code this needs to be changed to the gapless price.

*Also remember that anything plotted on the 1st pane eg. EMA, BBs Keltner etc. will need to have 'accum' added to the code.

* If there is a Function involved that includes 'Price' (as with the JtHMA) then you will need to place the gapless code in the function as well.....that's usually the reason it does not work!

Just study the code and don't give up.....that's the way I learned to code these extra indicators! Post your code here and either I or someone else can take a look at it. You should also post your errors if you have any. Hope it helps mate.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.