Announcement

Collapse

Looking for a User App or Add-On built by the NinjaTrader community?

Visit NinjaTrader EcoSystem and our free User App Share!

Have a question for the NinjaScript developer community? Open a new thread in our NinjaScript File Sharing Discussion Forum!
See more
See less

Partner 728x90

Collapse

Value outside of range - divide by zero issue

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • NinjaTrader_AdamP
    replied
    ShruggedAtlas,

    double PriceDelta = (Close[0] - Close[1]) * 100;

    and

    PTR.Set(RsiDelta / PriceDelta);

    Is the culprit here. This may be zero, as such you need to check :

    if ( PriceDelta < Double.Epsilon )
    {
    //do something
    }

    You may want to use the prior PriceDelta that wasn't zero, i.e. keep track of the previous PriceDelta and only update the previous one if PriceDelta isn't zero.

    Please let me know if I may assist further.
    Last edited by NinjaTrader_AdamP; 02-15-2012, 10:23 AM.

    Leave a comment:


  • ShruggedAtlas
    started a topic Value outside of range - divide by zero issue

    Value outside of range - divide by zero issue

    I've got a simple indicator that compares the relative changes in price to changes in another oscillator. I've printed the resulting data to the output window and the values vary from negative to positive and are in a relatively tight range except when there is no change in price and I end up with a spike to infinity (which prints to the output window) this seems to occurr because when price doesn't change there is a divide by zero incident.

    Is there a way to check for divide by zero and not plot that? or is there another approach I should take to compare the relative changes of two sets of data?

    Here is my code:

    Code:
    			double RsiDelta = (RSI(2,3)[0] + RSI(2,3)[1] + RSI(2,3)[2]) - 
    								(RSI(2,3)[1] + RSI(2,3)[2] + RSI(2,3)[3]);
    			
    			double PriceDelta = (Close[0] - Close[1]) * 100;
    			
    			Print("RsiDelta is " + RsiDelta);
    			Print("PriceDelta is " + PriceDelta);
    			Print("RsiDelta divided by PriceDelta is " + RsiDelta / PriceDelta);
    
                PTR.Set(RsiDelta / PriceDelta);

Latest Posts

Collapse

Topics Statistics Last Post
Started by jungo, Today, 12:27 PM
0 responses
2 views
0 likes
Last Post jungo
by jungo
 
Started by alichi50, Today, 11:12 AM
1 response
7 views
0 likes
Last Post NinjaTrader_PaulH  
Started by babouin77, Today, 10:29 AM
2 responses
12 views
0 likes
Last Post babouin77  
Started by pancho_r, Today, 09:25 AM
3 responses
18 views
0 likes
Last Post NinjaTrader_Zachary  
Started by TradingForTheFutures, Today, 09:17 AM
1 response
8 views
0 likes
Last Post NinjaTrader_Clayton  
Working...
X