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.

shortski

Can Someone Tell Me How to Get an Indicator to Stop Plotting

Recommended Posts

Hi all. I am relatively new to EasyLanguage and am trying to combine 2 indicators to show me a 3rd indicator when 2 conditions match up in the first 2. I have it so that it will Plot when these 2 conditions are right but I cannot get it to stop plotting. I have it set to a histogram. I tried "Else NoPlot" but that just made everything go blank.

 

This is the Code I have;

 

value1=GordoMACDDiff(Close,12,26);

value2=$rtOscillatorDivergence(high,low,value1,0.9);

value3 = ThreeLineBreak;

 

Condition1 = value2 >=0 and value3 >=0;

 

Condition2 = value2 <=0 and value3 <=0;

 

 

If

Condition1 then begin

Plot1(1,"Buy",green);

end;

 

 

If

Condition2 then begin

Plot1(-1,"Sell",red);

end;

 

I wanted to add a screenshot but when I click on the attachment icon, nothing happens?

 

Thanks

 

Shortski

Share this post


Link to post
Share on other sites
Hi all. I am relatively new to EasyLanguage and am trying to combine 2 indicators to show me a 3rd indicator when 2 conditions match up in the first 2. I have it so that it will Plot when these 2 conditions are right but I cannot get it to stop plotting. I have it set to a histogram. I tried "Else NoPlot" but that just made everything go blank.

 

This is the Code I have;

 

value1=GordoMACDDiff(Close,12,26);

value2=$rtOscillatorDivergence(high,low,value1,0.9);

value3 = ThreeLineBreak;

 

Condition1 = value2 >=0 and value3 >=0;

 

Condition2 = value2 <=0 and value3 <=0;

 

 

If

Condition1 then begin

Plot1(1,"Buy",green);

end;

 

 

If

Condition2 then begin

Plot1(-1,"Sell",red);

end;

 

I wanted to add a screenshot but when I click on the attachment icon, nothing happens?

 

Thanks

 

Shortski

 

Hi Shortski,

 

Can you try the attachment function again? Im not having any issues on my end. Thanks.

Share this post


Link to post
Share on other sites
Hi all. I am relatively new to EasyLanguage and am trying to combine 2 indicators to show me a 3rd indicator when 2 conditions match up in the first 2. I have it so that it will Plot when these 2 conditions are right but I cannot get it to stop plotting. I have it set to a histogram. I tried "Else NoPlot" but that just made everything go blank.

 

This is the Code I have;

 

value1=GordoMACDDiff(Close,12,26);

value2=$rtOscillatorDivergence(high,low,value1,0.9);

value3 = ThreeLineBreak;

 

Condition1 = value2 >=0 and value3 >=0;

 

Condition2 = value2 <=0 and value3 <=0;

 

 

If

Condition1 then begin

Plot1(1,"Buy",green);

end;

 

 

If

Condition2 then begin

Plot1(-1,"Sell",red);

end;

 

I wanted to add a screenshot but when I click on the attachment icon, nothing happens?

 

Thanks

 

Shortski

 

What values do your functions $rtOscillatorDivergence and ThreeLineBreak return? If they only return a 0 or a 1, then one of your Condition statements will always be true and the indicator will always be plotted.

Share this post


Link to post
Share on other sites
Yes, that is what they return. So there is no way for the new Plot to only show when both parameters are present then?

 

 

Well, there would be a way, but you will need to add additional code to make sure you don't always have a true condition to plot. I am not 100% sure of what it is you are trying to check, but if those two functions either return 0 or 1, maybe changing the your condition statements as below might help?

 

Condition1 = value2 > 0 and value3 > 0;

 

Condition2 = value2 = 0 and value3 = 0;

Share this post


Link to post
Share on other sites
Yes, both indicators plot 1s and 0s. So is there any way to get the new indicator to plot when both conditions are met (only)?

 

Try changing the code as above.

 

Or like this:

 

Condition1 = value2 = 1 and value3 = 1;

 

Condition2 = value2 = 0 and value3 = 0;

Share this post


Link to post
Share on other sites

Interesting. It removed the conditions where the set up was present as well as the green bars. So, basically, I need almost the exact opposite of that. I will play with it a bit after the market closes.

Share this post


Link to post
Share on other sites

if your logic is correct then try...

 

If Condition1 then 
Plot1(1,"Buy",green)

else
Noplot(1);

etc

 

and use a point not a line in the style

 

hth

Share this post


Link to post
Share on other sites

I tried Else NoPlot and Else NoPlot(1) and when I try to complile it, it wants 'end' where the 'else' is. Right now, I am trying to vary the code to see if I can come up with returns other than +/1 1.

 

Thanks for all the help on this guys. I appreciate the inputs.

 

S

Share this post


Link to post
Share on other sites

did you try?

 

value1=GordoMACDDiff(Clos e,12,26);
value2=$rtOscillatorDiver gence(high,low,value1,0.9 );
value3 = ThreeLineBreak;

Condition1 = value2 >=0 and value3 >=0;

Condition2 = value2 <=0 and value3 <=0;

noplot(1);

If
Condition1 then begin
Plot1(1,"Buy",green);
end;


If
Condition2 then begin
Plot1(-1,"Sell",red);
end;

btw The EL editor / compiler :) only asks for an 'end;' if there is a 'begin'

Edited by zdo
it needed editing :)

Share this post


Link to post
Share on other sites

That was a good Idea but when I entered it, the chart stayed the same. That is it plots a histogram bar on every price bar. I also tried;

 

if not condition1 and not condition2 then noplot(1);

 

and got the same result.

 

Thanks though.

 

S

Share this post


Link to post
Share on other sites

Did you try changing the style from histogram to point?

Which subgraph are you plotting it in?

Maybe post the code for all and we'll get it going

Share this post


Link to post
Share on other sites

This is the code and the attachment shows you what it comes out like in the lower subgraph. I circled the areas where it should plot but I am trying to remove it from the other areas and just have it blank. Someone suggested to me to put a Switch in the code so the code only plots when the condition is present. I haven't tried this yet as I ahve never tried that.

 

value1=GordoMACDDiff(Close,12,26);

value2=$rtOscillatorDivergence(high,low,value1,0.9);

value3 = ThreeLineBreak;

 

Condition1 = value2 >=0 and value3 >=0;

 

Condition2 = value2 <=0 and value3 <=0;

 

 

If

Condition1 then begin

Plot1(1,"Buy",green);

end;

 

 

If

Condition2 then begin

Plot1(-1,"Sell",red);

end;

5aa70eae976df_OscDiv3LnBrk5.thumb.png.01b6ce619f7aad927dd5a73dfe398727.png

Share this post


Link to post
Share on other sites

Do me a favour, your screenshot looks a little confusing.... post a screenshot of just the two indicators on it that you're trying to combine.

 

 

Also....

 

What's the full code... as in value3 just says threelinebreak..... so what's the threelinebreak made up of.

 

Also... in your code... if value2 & value3 = 0 then both conditions are true..

 

Post a new pic and some details and I'll take a look.

 

Cheers

 

Blu-Ray

Share this post


Link to post
Share on other sites

I cannot post the ThreelineBreak Function as it is a leased indicator. On the chart, it is the continuous indicator plotting in sub graph 2. The other indicator in sub graph 2 is the Oscillator Divergence.

 

The OscillatorDivergence is also a leaded indicator that I have inserted a MACD offset into. The Function for the MACDDiff is;

 

Inputs: FastLength(NumericSimple),

SlowLength(NumericSimple),

MACDLength(NumericSimple);

 

Vars: double var0(0), double var1(0);

 

var0 = MACD( Close, FastLength, SlowLength ) ;

var1 = XAverage( var0, MACDLength ) ;

 

gordoMACDDiff = (var0 - var1) ;

 

And the Indicator is;

 

inputs: FastLength( 12 ), SlowLength( 26 ), MACDLength( 9 ), EMALength(9) ;

variables: var0( 0 ), var1( 0 ), var2( 0 ), EMAMACDDIFF(0) ;

 

var0 = MACD( Close, FastLength, SlowLength ) ;

var1 = XAverage( var0, MACDLength ) ;

var2 = (var0 - var1) ;

EMAMACDDIFF = Xaverage(var2, EMALength);

 

 

Plot3( var2, "MACDDiff" ) ;

Plot4( 0, "ZeroLine" ) ;

Plot5(EMAMACDDIFF, "EMADiff");

 

condition1 = var2 crosses over 0 ;

if condition1 then

Alert( "Bullish alert" )

else

begin

condition1 = var2 crosses under 0 ;

if condition1 then

Alert( "Bearish alert" ) ;

end;

 

 

I do know that the Oscillator gives a return of 0.00 and it is either a red or green 0.00. The ThreeLineBreak returns either a +1 or a -1.

 

I understand what you are saying about the >= and <= 0 but it is the only way to get it to plot at all. Any changes creates a blank plot. I have tried a +/-1 as well as +/-1 for the ThreeLineBreak and 'red' and 'green' for the OscillatorDivergence.

5aa70eae9ff5d_OscDiv3LnBrk6.thumb.png.97f7a617fe77efdbbda67b86d17282ab.png

Share this post


Link to post
Share on other sites
This is the code and the attachment shows you what it comes out like in the lower subgraph. I circled the areas where it should plot but I am trying to remove it from the other areas and just have it blank. Someone suggested to me to put a Switch in the code so the code only plots when the condition is present. I haven't tried this yet as I ahve never tried that.

 

value1=GordoMACDDiff(Close,12,26);

value2=$rtOscillatorDivergence(high,low,value1,0.9);

value3 = ThreeLineBreak;

 

Condition1 = value2 >=0 and value3 >=0;

 

Condition2 = value2 <=0 and value3 <=0;

 

 

If

Condition1 then begin

Plot1(1,"Buy",green);

end;

 

 

If

Condition2 then begin

Plot1(-1,"Sell",red);

end;

 

Try this:

inputs:

ChartBGColor( black );

//ChartBGColor is Chart Background Color, where users can define color based on their Chart Background Color Settings.

--

Your Stuff for Condition 1 and 2

--

 

if Condition 1

then begin

YourIndicator=1;

YourIndicatorColor= Blue;

end

else

if Condition 2

then begin

YourIndicator=-1;

YourIndicatorColor= Red;

end

else

begin

YourIndicator=0;

YourIndicatorColor= ChartBGColor;

end;

Plot1( YourIndicator, "YourIndicator", YourIndicatorColor);

Share this post


Link to post
Share on other sites
I cannot post the ThreelineBreak Function as it is a leased indicator. On the chart, it is the continuous indicator plotting in sub graph 2. The other indicator in sub graph 2 is the Oscillator Divergence.

 

 

I do know that the Oscillator gives a return of 0.00 and it is either a red or green 0.00. The ThreeLineBreak returns either a +1 or a -1.

 

I understand what you are saying about the >= and <= 0 but it is the only way to get it to plot at all. Any changes creates a blank plot. I have tried a +/-1 as well as +/-1 for the ThreeLineBreak and 'red' and 'green' for the OscillatorDivergence.

 

Regarding your ThreelineBreak Function ...... it's possible that ( as with some functions ) that it's value = -1 when the condition is false.... so could you make up an indicator and insert this code then post a pic.

 

Plot1(ThreeLineBreak, "ThreeLineBreak");

 

 

Also you're saying the Oscillator gives a return of 0 and changes color to either red or green..... this is incorrect as it's only set to plot at zero.... the actual figure will be different......... ( this could also be the case with the ThreeLineBreak )

 

Again if you can post a chart with ONLY these two indicators on... then we'll hopefully get somewhere.

 

Cheers

 

Blu-Ray

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.