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.


  • Topics

  • Posts

    • 📁 Population in 2100, as projected by UN Population Division.   🇮🇳 India: 1,533 million 🇨🇳 China: 771 million 🇳🇬 Nigeria: 546 million 🇵🇰 Pakistan: 487 million 🇨🇩 Congo: 431 million 🇺🇸 US: 394 million 🇪🇹 Ethiopia: 323 million 🇮🇩 Indonesia: 297 million 🇹🇿 Tanzania: 244 million 🇪🇬 Egypt: 205 million 🇧🇷 Brazil: 185 million 🇵🇭 Philippines: 180 million 🇧🇩 Bangladesh: 177 million 🇳🇪 Niger: 166 million 🇸🇩 Sudan: 142 million 🇦🇴 Angola: 133 million 🇺🇬 Uganda: 132 million 🇲🇽 Mexico: 116 million 🇰🇪 Kenya: 113 million 🇷🇺 Russia: 112 million 🇮🇶 Iraq: 111 million 🇦🇫 Afghanistan: 110 million   @FinancialWorldUpdates Profits from free accurate cryptos signals: https://www.predictmag.com/   
    • “If the West finds itself falling behind in AI, it won’t be due to a lack of technological prowess or resources. It won’t be because we weren’t smart enough or didn’t move fast enough. It will be because of something many of our Eastern counterparts don’t share with us: fear of AI.   The root of the West's fear of AI can no doubt be traced back to decades of Hollywood movies and books that have consistently depicted AI as a threat to humanity. From the iconic "Terminator" franchise to the more recent "Ex Machina," we have been conditioned to view AI as an adversary, a force that will ultimately turn against us.   In contrast, Eastern cultures have a WAY different attitude towards AI. As UN AI Advisor Neil Sahota points out, "In Eastern culture, movies, and books, they've always seen AI and robots as helpers and assistants, as a tool to be used to further the benefit of humans."   This positive outlook on AI has allowed countries like Japan, South Korea, and China to forge ahead with AI development, including in areas like healthcare, where AI is being used to improve the quality of services.   The West's fear of AI is not only shaping public opinion but also influencing policy decisions and regulatory frameworks. The European Union, for example, recently introduced AI legislation prioritizing heavy-handed protection over supporting innovation.   While such measures might be well-intentioned, they risk stifling AI development and innovation, making it harder for Western companies and researchers to compete.   Among the nations leading common-sense AI regulation, one stands out for now: Singapore.” – Chris C Profits from free accurate cryptos signals: https://www.predictmag.com/ 
    • $NFLX Netflix stock hold at 556.59 support or breakdown?  https://stockconsultant.com/?NFLX
    • $RDNT Radnet stock flat top breakout watch, https://stockconsultant.com/?RDNT
    • $GNK Genco Shipping stock narrow range breakout watch, also see $GOGL https://stockconsultant.com/?GNK
×
×
  • Create New...

Important Information

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