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

It is partially EOT and partially mine but the problem is not in the Indicators, it is a problem with the code syntax. That is why I am trying to figure it out without bothering them.

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

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Topics

  • Posts

    • Apparently, the murdering psychopussy military industrial complex is suffering from 'Middle East Fatigue'. Oh dear, the poor little lambs must be bored of killing 500k innocent people and displacing 10 million others all based on a pack of never ending lies. Obviously, you won't need the host to give you a blow by blow account of how you're being treated like a 5 year old..
    • Don't have time to post Big Picture today... quick notes:  I could almost re-post same content again ... 4 weeks later ??  except -  index finger is back up to speed Out of half the N copper position near 3.2 on Wed.  Just tucked stop on rest of the position up under today's lows... that's what reminded me of that Big Picture post PM’s: are still precious   ... "Silver is the new gold"  ;0 lol ... and if you take that seriously ... jokes on you... have a great weekend all.
    • ...been banging / just sayin' on this for a while now http://www.informationliberation.com/?id=58283
    • (... only posted because not much will be said on msm about these...)   There is ‘under the law’ and there is ‘above the law’  ... just sayin’
      https://www.zerohedge.com/news/2018-04-20/nunes-gowdy-and-goodlatte-go-nuclear-after-comey-memos-released
          speaking of msm There is ‘under the truth’ and there is ‘above the truth’  ... just sayin’ https://www.strategic-culture.org/news/2018/04/19/how-guardian-fulfills-george-orwell-prediction-of-newspeak.html
    • Date : 20th April 2018.

      MACRO EVENTS & NEWS OF 20th April 2018.



      FX News Today

      European Outlook: SNB’s Jordan sees no need for change in policy. The Swiss central bank President told Bloomberg last night that “there is no need to do anything regarding monetary policy at this morning”. Speaking after the CHF broke through the 1.20 per euro mark for the first time since the SNB gave up that ceiling, Jordan said the franc’s drop goes in the “right direction” but added that the currency is still considered a haven and the situation “fragile” and prone to change. So the SNB “remains very prudent” and “convinced that the current monetary policy is still necessary”. Further confirmation that the SNB is firmly on hold while watching also the ECB’s move very closely. If and when the ECB finally starts to reign in its support it will also increase the room for the SNB to manoeuvre. Bloomberg polls predict the first rate hike from the SNB in the last quarter of 2019.

      US Updates: Revealed a Philly Fed rise to 23.2 in April and a 1k initial claims downtick to a slightly-elevated 232k in the BLS survey week of April. The ISM-adjusted Philly Fed beat estimates with only a small April drop to 59.7 from a 45-year high of 61.8 in March, thus outperforming Monday’s Empire State where we saw an April drop to 15.8 from 22.5 with an ISM-adjusted decline to 56.2 from 57.3. For claims, the trend remains tight despite modestly higher readings over the last three weeks, as the moving Easter holiday and school breaks often distort April claims. We still expect a 210k April nonfarm payroll rise. The weekly Bloomberg consumer comfort index hit a third consecutive new cycle-high in mid-April of 58.1, and leading indicators rose 0.3% in March to leave a 22-month stretch without a decline, and a rise in the 6-month annualized reading to a lofty 8.8%

      Charts of the Day



      Main Macro Events Today
        CAD Retail sales – Expectations are for an improvement of 0.5% in February after the 0.3% gain in January. The ex-autos sales aggregate is expected at +0.3% after the 0.9% gain in January. The CPI’s gasoline price index edged 0.7% lower in February after jumping 3.2% in January following a 3.3% drop in December. % m/m inline with expectations CAD CPI – Expect March CPI, due Friday, to expand 0.4% (m/m) after the 0.6% surge in February. The annual growth rate is projected at 2.5% in March, up from the 2.2% y/y pace seen in February that was the fasted rate of CPI growth since the 2.4% pace in October of 2014. The BoC took the recent CPI climb in stride, viewing it as in line with their outlook. The temporary factors that had been restraining inflation, the Bank explained, “have largely dissipated, as expected.” The close to 2% core inflation rates are consistent with an “economy operating with little slack.” Inflation in 2018 is expected to be modestly higher than they expected in January, but due to the transitory impact of higher gas prices and recent minimum wage increases. See the preview. IMF Speeches – Saunders (BOE) Weidmann (Buba) Williams (FOMC) Support & Resistance Levels



      Always trade with strict risk management. Your capital is the single most important aspect of your trading business.

      Please note that times displayed based on local time zone and are from time of writing this report.

      Click HERE to access the full HotForex Economic calendar.

      Want to learn to trade and analyse the markets? Join our webinars and get analysis and trading ideas combined with better understanding on how markets work. Click HERE to register for FREE!

      Click HERE to READ more Market news. 


      Stuart Cowell
      Senior Market Analyst
      HotForex


      Disclaimer: This material is provided as a general marketing communication for information purposes only and does not constitute an independent investment research. Nothing in this communication contains, or should be considered as containing, an investment advice or an investment recommendation or a solicitation for the purpose of buying or selling of any financial instrument. All information provided is gathered from reputable sources and any information containing an indication of past performance is not a guarantee or reliable indicator of future performance. Users acknowledge that any investment in FX and CFDs products is characterized by a certain degree of uncertainty and that any investment of this nature involves a high level of risk for which the users are solely responsible and liable. We assume no liability for any loss arising from any investment made based on the information provided in this communication. This communication must not be reproduced or further distributed without our prior written permission.
×

Important Information

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