NexusFi: Find Your Edge


Home Menu

 





Help getting script to work with NT7


Discussion in NinjaTrader

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




 
Search this Thread
  #1 (permalink)
 markus3500 
Cleveland OH
 
Experience: Intermediate
Platform: NINJATRADER 7
Trading: ES
Posts: 74 since Dec 2012
Thanks Given: 32
Thanks Received: 15

I have a script I found online of an indicator I have been looking for. Unfortunately I have no background in coding and not exactly sure on how I can import this text into a working indicator for NT7. I would appreciate any guidance on importing this to work with NT7. I have the copy of the script as it was presented on the webpage:

Its a Trade Volume Index [TVI] indicator

 
Code
#region Namespaces
using System;
#endregion

namespace ScriptCode {
    /// <summary>
    /// Indicator scripts are used for calculating a series of numerical values.
    /// 
    /// This script can be used in several ways:
    /// (1) It can be used on a chart.
    /// (2) It can be used from another script.
    /// (3) It can be used as a script column in a watchlist.
    /// </summary>
    public partial class MyIndicator : IndicatorScriptBase // NEVER CHANGE THE CLASS NAME
    {
#region Variables
        // Use for the underlying symbol index on which to calculate the indicator script.
        private int _symbolIndex;
        // Use for the minimum tick size.
        private double _MTV;
#endregion

#region OnInitialize
        /// <summary>
        /// This function accepts the user parameters for the script and is called when a new indicator instance is created. 
        /// One of the parameters accepted by it must be that of a symbol or another script that is
        /// based on a symbol (drawing, indicator, pattern or signal). This symbol will be used as the underlying symbol for the indicator.
        /// 
        /// The parameter values can be specified from the user interface (UI) or from another script, depending on usage.
        /// </summary>
        /// --------------------------------------------------------------------------------------------------
        ///                                 INSTRUCTIONS - PLEASE READ CAREFULLY
        /// --------------------------------------------------------------------------------------------------
        /// YOU MUST SET A PARAM TAG FOR EACH PARAMETER ACCEPTED BY THIS FUNCTION.
        /// ALL PARAM TAGS SHOULD BE SET IN THE 'OnInitialize' REGION, RIGHT ABOVE THE 'OnInitialize' FUNCTION.
        /// THE ORDER OF THE TAGS MUST MATCH THE ORDER OF THE ACTUAL PARAMETERS.

        /// REQUIRED ATTRIBUTES:
        /// (1) name: The exact parameter name.
        /// (2) type: The type of data to collect from the user: 
        /// Set to "Integer" when the data type is 'int'
        /// Set to "IntegerArray" when the data type is 'int[]'
        /// Set to "DateTime" when the data type is 'long' (The 'long' data type can only be used for date/time representation)
        /// Set to "DateTimeArray" when the data type is 'long[]' (The 'long' data type can only be used for date/time representation)
        /// Set to "Boolean" when the data type is 'bool'
        /// Set to "BooleanArray" when the data type is 'bool[]'
        /// Set to "Double" when the data type is 'double'
        /// Set to "DoubleArray" when the data type is 'double[]'
        /// Set to "String" when the data type is 'string'
        /// Set to "StringArray" when the data type is 'string[]'
        /// Set to "Indicator" when the data type is 'Indicator'
        /// Set to "Pattern" when the data type is 'Pattern'
        /// Set to "Signal" when the data type is 'Signal'
        /// Set to "Drawing" when the data type is 'Drawing'
        /// Set to "Symbol" when the data type is 'int' representing a symbol index.

        /// OPTIONAL ATTRIBUTES:
        /// (3) default: The default parameter value is only valid when the type is Integer, Boolean, Double or String. 
        /// (4) min: The minimum parameter value is only valid when the type is Integer or Double.
        /// (5) max: The maximum parameter value is only valid when the type is Integer or Double.

        /// EXAMPLE: <param name="" type="" default="" min="" max="">Enter the parameter description here.</param> 
        /// --------------------------------------------------------------------------------------------------
        /// <param name="symbolIndex" type="Symbol">Use for the underlying symbol index on which to calculate the indicator script.</param>
        public void OnInitialize(
            int symbolIndex) {
            // Set the symbol index.
            _symbolIndex = symbolIndex;
            // Set the MTV value.
            _MTV = SymbolTick(symbolIndex);
        }
#endregion

#region OnValue
        /// <summary>
        /// This function is used for calculating the indicator value for the latest bar (see the Indicator functions).
        /// </summary>
        /// <returns>The indicator value for the latest bar.</returns>
        public override double OnValue() {
            // Check whether the two consecutive closing prices have moved more than one tick.
            if (BarClose(_symbolIndex, 0) - BarClose(_symbolIndex, 1) > _MTV)
                return this[1] + BarVolume(_symbolIndex, 0);
            else
                return this[1] - BarVolume(_symbolIndex, 0);
        }
#endregion

#region OnRegisterPens
        /// <summary>
        /// This function is used for registering the indicator pens (see the IndicatorRegisterPen function).
        /// </summary>
        public override void OnRegisterPens() {
            // Register a pen.
            IndicatorRegisterPen(0, "Pen", IQ_Color.MIDNIGHT_BLUE, IQ_DashStyle.SOLID, 1);
        }
#endregion

#region OnSelectPen
        /// <summary>
        /// This function is used for selecting a registered indicator pen with which to color the latest indicator value.
        /// Call the IndicatorRegisterPen function from the OnRegisterPens function in order to register an indicator pen.
        /// </summary>
        /// <returns>The indicator pen index to use for coloring the latest indicator value.</returns>
        public override byte OnSelectPen() {
            // Color the indicator value with the zero pen.
            return 0;
        }
#endregion
    }
}

If someone can help with this I would greatly appreciate it


Started this thread Reply With Quote

 
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
8 thanks
Algo automated / semi-automated trading anyone?
6 thanks
Trying to learn Volume and price action correlation
5 thanks
  #3 (permalink)
 
cory's Avatar
 cory 
virginia
the coin hunter
 
Experience: Intermediate
Platform: ninja
Trading: NQ
Posts: 6,098 since Jun 2009
Thanks Given: 877
Thanks Received: 8,093


here is TVI indicator, it works pretty much like OBV indicator.
some info Trade Volume Index - Technical Analysis from A to Z


Attached Files
Elite Membership required to download: TVI.cs
Reply With Quote
Thanked by:
  #4 (permalink)
 markus3500 
Cleveland OH
 
Experience: Intermediate
Platform: NINJATRADER 7
Trading: ES
Posts: 74 since Dec 2012
Thanks Given: 32
Thanks Received: 15


cory View Post
here is TVI indicator, it works pretty much like OBV indicator.
some info Trade Volume Index - Technical Analysis from A to Z

Thank you Cory... its greatly appreciated!!!


Started this thread Reply With Quote




Last Updated on May 13, 2015


© 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