NexusFi: Find Your Edge


Home Menu

 





Showing a boolean series in the Market Analyzer


Discussion in NinjaTrader

Updated
    1. trending_up 2,645 views
    2. thumb_up 5 thanks given
    3. group 2 followers
    1. forum 2 posts
    2. attach_file 0 attachments




 
Search this Thread
  #1 (permalink)
Overview
California
 
Posts: 40 since Dec 2010
Thanks Given: 14
Thanks Received: 4

Hi All

I am trying to get the output of a trendline crossing indicator (i.e. whether a line has been breached) to show up as a 1 or a 0 in the Market Analyzer. If I do it the usual way then the Analyzer thinks the trendline indicator is a normal one that just calculates without any human intervention. I think there may be a way around this by creating a Boolean data series in a primary indicator, and then using a second indicator to read in the Boolean series from the first indicator and converrt it to a plot. Is this doable or is there a smarter way ?

Thanks !!

Overview


Reply With Quote

Can you help answer these questions
from other members on NexusFi?
I Have a Thing Called Iran -- Trump Stays in DC as Airsp …
Prediction Markets & Event Contracts
Peace Deal Forward Curve: May 22%, June 51%, December 81 …
Prediction Markets & Event Contracts
Prediction Markets Expiry Day: Trump Eyes War Exit, $230 …
Prediction Markets & Event Contracts
One Wallet Made $200K in Hours: AP Probes Polymarket Cea …
Prediction Markets & Event Contracts
Thursday May 28: GDP + Core PCE + Jobless Claims All at …
Traders Hideout
 
Best Threads (Most Thanked)
in the last 7 days on NexusFi
Sober Journey With S&P
24 thanks
2026 Jlab journal
10 thanks
Lady Vols Primer: Trading Volatility Journal
7 thanks
Algo automated / semi-automated trading anyone?
6 thanks
Trying to learn Volume and price action correlation
5 thanks
  #3 (permalink)
 
Fat Tails's Avatar
 Fat Tails 
Berlin, Europe
Market Wizard
 
Experience: Advanced
Platform: NinjaTrader
Broker: Interactive Brokers
Trading: Futures & Stocks
Posts: 9,887 since Mar 2010
Thanks Given: 4,242
Thanks Received: 27,114



Overview View Post
Hi All

I am trying to get the output of a trendline crossing indicator (i.e. whether a line has been breached) to show up as a 1 or a 0 in the Market Analyzer. If I do it the usual way then the Analyzer thinks the trendline indicator is a normal one that just calculates without any human intervention. I think there may be a way around this by creating a Boolean data series in a primary indicator, and then using a second indicator to read in the Boolean series from the first indicator and converrt it to a plot. Is this doable or is there a smarter way ?

Thanks !!

Overview


There is definitely a smarter way.

The Market Analyzer (and the Strategy Builder) can only read PlotSeries. So what you need to do is to create an additional plot within your indicator. Please set that plot to Color.Transparent because you do not want to see the output on your chart. If you use Color.Transparent NinjaTrader will also not use the plot for the AutoScale property. If the plot is set to Color.Empty, the plot will not be shown, but it will affect the AutoScale properties.

The PlotSeries contains objects of type double. This is a bit luxurious for a BoolSeries, but it will solve our problem.


Attributing values to the PlotSeries

For a trendline cross you would like to know when a signal has occured. So you could for example use the following values:

-> bullish cross = 2.0 (first bar after the fast line has crossed above the slow line)
-> bullish fillter = 1.0 (all other bars when the fast line is above the slow line)
-> bearish cross = -2.0 (first bar after the fast line has crossed below the slow line)
-> bearish filter = -1.0 (all other bars when the fast line is below the slow line)

These values will not be plotted, but they can be accessed via the Market Analyzer.


Accessing the values via the Market Analyzer

I have often made bad experiences when I have checked a double for a specific value. I am only using conditions such as
 
Code
if (x == 2)
{  ; // do something}

when x is an integer. Many NinjaTrader system indicators use the formula
 
Code
if (Math.Abs (x -2) < double.Epsilon)
{  ; // do something}

instead. But this is no solution, as the error can be larger than double.Epsilon, depending on which calculations were performed. In our case we have set the value of the DataSeries field to 2, so there should be no problem checking for 2, but as a general habit, when working with objects of the data type double, I would rather check for the value being greater than 1.5, as this is not affected by any rounding error.


Reply With Quote




Last Updated on September 7, 2012


© 2026 NexusFi®, s.a., All Rights Reserved.
Av Ricardo J. Alfaro, Century Tower, Panama City, Panama, Ph: +507 833-9432 (Panama and Intl), +1 888-312-3001 (USA and Canada)
All information is for educational use only and is not investment advice. There is a substantial risk of loss in trading commodity futures, stocks, options and foreign exchange products. Past performance is not indicative of future results.
About Us - Contact Us - Site Rules, Acceptable Use, and Terms and Conditions - Downloads - Top
no new posts