Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

After Version NT8.0.25 Compile Errors for My Custom Coded Indicators

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

    After Version NT8.0.25 Compile Errors for My Custom Coded Indicators

    I have just updated NT8 to 8.0.25 to NT8.0.27 My custom coded indicators were no longer available in my Indicator list. I can see the indicators are still in the Control New NinjaScript Indicator Editor. When I click on my custom Indicators and compile, I am seeing Compile Errors: CS0246,CS0118, etc, Essentially the errors for all my Custom Coded Indicators. Please advise how to fix.

    Best regards.

    #2
    This may be due to the change to the install location directory.
    I can give you some ‘pointers’ re: what you might need to do.
    Check 27 Release Notes - it tells you what’s changed. Simply put, abandoning 32bit means all user-specific data (e.g. custom indicators, sound files etc) are no longer in 32-bit directory.
    This presents 2 problems - new install 27 can’t find your old files, new install finds duplicates (both locations).
    What you need to do is copy your old 32-bit Ninja folder to 64-bit location then delete the 32-bit, and then install v27. If you still get errors, go into Ninjascript Editor and recompile, and delete any references to 32-bit folder directory paths.
    As I understand it (limited), if you have open-source indicators and/or they don’t reference specific directory locations (32 bit) this isn’t too much of a problem, but if you have sealed .dlls (e.g. 3rd-party locked indicators which have hard-coded directory paths) you will need to get new ones from the originators.

    There is some info in the Forum with other victims of this Release debacle. I’ve yet to attempt it myself, so can’t add personal experience although I worked with some veteran users and vendors offline to resolve the consequences.
    Totally pitiful by Ninjatrader Development and Support. There should be a Warning Sticky and Step-by-Step Guide not just put up an Update and let the carnage ensue.
    Hope this helps

    Comment


      #3
      Hello FA2CTS,

      Thank you for writing in.

      There are a few things that can result in Compile errors. That being said, you will want to resolve them so that the add-ons work as expected within NinjaTrader. You may use the steps below to find the compile errors and send us a screenshot so we may provide the specific steps to resolve the errors:
      • Go to the Control Center > New > NinjaScript Editor > Right-click on the background > Click Compile
      • If any errors appear, make the window full screen and then send us a screenshot of as many of the errors as possible.
        • If you are unsure of how to take a screenshot, I recommend using the Windows Snipping tool.
          • Click on the Windows Icon at the bottom of your screen and type the word "Snip"
          • Click on the Snipping tool, click New, then click and drag around the area you want to screenshot
          • Click File > Save As > Save the screenshot where you can find it
          • Please click here for a video demonstration


      Since we do not yet have a screenshot, please use the steps below to resolve the various error messages you are seeing. Performing the steps below will often resolve any of the other compile errors I didn't provide specific steps for. So, perform the steps below to resolve the compile errors you can with these steps.

      If you perform the steps below and still have compile errors within your platform, please take a screenshot of the remaining compile errors and include them in your response.

      CS0006 - Explanation of Cause

      This error is caused when a .dll file is being referenced that NinjaTrader is unable to find.

      Steps to Resolve
      1. Right-click within the NinjaScript Editor window and select "References".
      2. Locate and select the reference to the .dll file mentioned in the Error.
      3. Click "remove" to remove the reference.
      4. Click "OK" and recompile.

      Below is a link to our publicly available YouTube channel overviewing this process:



      CS0246 - Explanation of Cause

      This error is caused when NinjaTrader is searching for a reference to a .dll file, and the reference does not exist.

      Steps to Resolve
      1. Right-click within the NinjaScript Editor window and select "References".
      2. Click "Add".
      3. Locate the .dll file for the file mentioned in the error.
      4. Click "Open" to add the reference.
      5. Click "OK" and recompile.

      Below is a link to our publicly available YouTube channel overviewing this process:
      https://youtu.be/fj1KliUjTC4


      CS0234 - Explanation of Cause

      This error indicates that a system indicator is missing from the NinjaTrader 8 -> bin -> Custom -> Indicator folder, or a corrupt file is currently present.

      Steps to Resolve
      1. Shut down NinjaTrader
      2. Navigate to Add/Remove Programs within the user's PC's Control Panel.
      3. Click "NinjaTrader 8" in the list of installed programs to select it.
      4. Click "Repair".
      5. Finally, restart NinjaTrader and recompile.

      Below is a link to our publicly available YouTube channel overviewing this process:



      If you still have compile errors showing after the steps above, please use the steps at the beginning of this message to take a screenshot of the remaining compile errors and attach that to your response.

      Please let us know if we may provide any further assistance.

      Comment


        #4
        Hello Bruce, Thank you very much for pointing me in the right direction! I will check the release notes and try to fix. I will let you know what I learn.

        Comment


          #5
          Hello Clayton,

          Thank you for the detail steps. I will start process and get back to you and Bruce.

          Comment


            #6
            Hello Clayton,

            I have attached Snippet of the error. "The error is the same reference to: Top_Bottom_1_2_3_V3NT8.cs" for all of my custom indicators.

            Comment


              #7

              Hello Clayton, I did file Explorer search and found the files as follows:


              Click image for larger version

Name:	Capture File Location of Top_Bottom.png
Views:	304
Size:	167.6 KB
ID:	1229005
              Is this helpful?

              Attached Files

              Comment


                #8
                Hello FA2CTS,

                Thank you for the updates.

                In the future, please make the NinjaScript Editor Full Screen and then take a screenshot of the bottom section where the errors are showing so we may see the exact wording and the context as we may be able to see things you are unaware to look for or know needs to be mentioned.

                From the information provided, it sounds like there may either be duplicate files or a file that has duplicate values being defined so it is causing errors.
                • You could try deleting the "Top_Bottom_1_2_3_V3NT8.cs" file that is located within the My Documents > NinjaTrader 8 > bin > Custom folder
                  • Then, recompile after deleting the file and see if the error goes away.
                • If the error goes away, you could try reimporting that add-on and if the errors return, reach out to the Developer of that add-on for more information on why it is making the error appear and what needs to be done to make it go away moving forward.
                If you are still experiencing Compile errors, please take a screenshot of the error section of the NinjaScript Editor window and include that in your response so we may see it and provide further information and assistance.

                Please let us know if we may provide any further assistance!

                Comment


                  #9
                  ​​ Hello Clayton,

                  I have followed your suggestions. The following errors are caused by the following code. I deleted the files listed in Bold below. It did not work.

                  ​​​​​​​I have attached a full page screen shot.

                  Should my backup NT8 and name it old and then install a brand new version of NT 8?

                  NinjaTrader.NinjaScript.Indicators
                  {
                  public partial class Indicator : NinjaTrader.Gui.NinjaScript.IndicatorRenderBase
                  {

                  private Bottom123[] cacheBottom123;
                  private Top123[] cacheTop123;



                  public Bottom123 Bottom123(bool show_New_Version, int min_Bars_1_2, int depth_Level_1_2, int retracement_2_3_Perc, int min_Bars_2_3, int min_Bars_Break, bool use_Custom_Lookback_Period, int custom_Lookback_Period, bool show_Price_Target, NinjaTrader.Gui.DashStyleHelper borderStyle, int width, int maxLengthOfLevelLines, bool enableAlert, string alertSoundFile, bool show_Labels)
                  {
                  return Bottom123(Input, show_New_Version, min_Bars_1_2, depth_Level_1_2, retracement_2_3_Perc, min_Bars_2_3, min_Bars_Break, use_Custom_Lookback_Period, custom_Lookback_Period, show_Price_Target, borderStyle, width, maxLengthOfLevelLines, enableAlert, alertSoundFile, show_Labels);
                  }

                  public Top123 Top123(bool show_New_Version, int min_Bars_1_2, int depth_Level_1_2, int retracement_2_3_Perc, int min_Bars_2_3, int min_Bars_Break, bool use_Custom_Lookback_Period, int custom_Lookback_Period, bool show_Price_Target, NinjaTrader.Gui.DashStyleHelper borderStyle, int width, int maxLengthOfLevelLines, bool enableAlert, string alertSoundFile, bool show_Labels)
                  {
                  return Top123(Input, show_New_Version, min_Bars_1_2, depth_Level_1_2, retracement_2_3_Perc, min_Bars_2_3, min_Bars_Break, use_Custom_Lookback_Period, custom_Lookback_Period, show_Price_Target, borderStyle, width, maxLengthOfLevelLines, enableAlert, alertSoundFile, show_Labels);
                  }



                  public Bottom123 Bottom123(ISeries<double&am p;gt; input, bool show_New_Version, int min_Bars_1_2, int depth_Level_1_2, int retracement_2_3_Perc, int min_Bars_2_3, int min_Bars_Break, bool use_Custom_Lookback_Period, int custom_Lookback_Period, bool show_Price_Target, NinjaTrader.Gui.DashStyleHelper borderStyle, int width, int maxLengthOfLevelLines, bool enableAlert, string alertSoundFile, bool show_Labels)
                  {
                  if (cacheBottom123 != null)
                  for (int idx = 0; idx < cacheBottom123.Length; idx++)
                  if (cacheBottom123[idx].Show_New_Version == show_New_Version && cacheBottom123[idx].Min_Bars_1_2 == min_Bars_1_2 && cacheBottom123[idx].Depth_Level_1_2 == depth_Level_1_2 && cacheBottom123[idx].Retracement_2_3_Perc == retracement_2_3_Perc && cacheBottom123[idx].Min_Bars_2_3 == min_Bars_2_3 && cacheBottom123[idx].Min_Bars_Break == min_Bars_Break && cacheBottom123[idx].Use_Custom_Lookback_Period == use_Custom_Lookback_Period && cacheBottom123[idx].Custom_Lookback_Period == custom_Lookback_Period && cacheBottom123[idx].Show_Price_Target == show_Price_Target && cacheBottom123[idx].BorderStyle == borderStyle && cacheBottom123[idx].Width == width && cacheBottom123[idx].MaxLengthOfLevelLines == maxLengthOfLevelLines && cacheBottom123[idx].EnableAlert == enableAlert && cacheBottom123[idx].AlertSoundFile == alertSoundFile && cacheBottom123[idx].Show_Labels == show_Labels && cacheBottom123[idx].EqualsInput(input))
                  return cacheBottom123[idx];
                  return CacheIndicator<Bottom123&am p;gt;(ne w Bottom123(){ Show_New_Version = show_New_Version, Min_Bars_1_2 = min_Bars_1_2, Depth_Level_1_2 = depth_Level_1_2, Retracement_2_3_Perc = retracement_2_3_Perc, Min_Bars_2_3 = min_Bars_2_3, Min_Bars_Break = min_Bars_Break, Use_Custom_Lookback_Period = use_Custom_Lookback_Period, Custom_Lookback_Period = custom_Lookback_Period, Show_Price_Target = show_Price_Target, BorderStyle = borderStyle, Width = width, MaxLengthOfLevelLines = maxLengthOfLevelLines, EnableAlert = enableAlert, AlertSoundFile = alertSoundFile, Show_Labels = show_Labels }, input, ref cacheBottom123);
                  }

                  eTop123[idx].Retracement_2_3_Perc == retracement_2_3_Perc && cacheTop123[idx].Min_Bars_2_3 == min_Bars_2_3 && cacheTop123[idx].Min_Bars_Break == min_Bars_Break && cacheTop123[idx].Use_Custom_Lookback_Period == use_Custom_Lookback_Period && cacheTop123[idx].Custom_Lookback_Period == custom_Lookback_Period && cacheTop123[idx].Show_Price_Target == show_Price_Target && cacheTop123[idx].BorderStyle == borderStyle && cacheTop123[idx].Width == width && cacheTop123[idx].MaxLengthOfLevelLines == maxLengthOfLevelLines && cacheTop123[idx].EnableAlert == enableAlert && cacheTop123[idx].AlertSoundFile == alertSoundFile && cacheTop123[idx].Show_Labels == show_Labels && cacheTop123[idx].EqualsInput(input))
                  return cacheTop123[idx];
                  return CacheIndicator<Top123&g t;(new Top123(){ Show_New_Version = show_New_Version, Min_Bars_1_2 = min_Bars_1_2, Depth_Level_1_2 = depth_Level_1_2, Retracement_2_3_Perc = retracement_2_3_Perc, Min_Bars_2_3 = min_Bars_2_3, Min_Bars_Break = min_Bars_Break, Use_Custom_Lookback_Period = use_Custom_Lookback_Period, Custom_Lookback_Period = custom_Lookback_Period, Show_Price_Target = show_Price_Target, BorderStyle = borderStyle, Width = width, MaxLengthOfLevelLines = maxLengthOfLevelLines, EnableAlert = enableAlert, AlertSoundFile = alertSoundFile, Show_Labels = show_Labels }, input, ref cacheTop123);
                  }

                  }
                  }

                  namespace NinjaTrader.NinjaScript.MarketAnalyzerColumns
                  {
                  public partial class MarketAnalyzerColumn : MarketAnalyzerColumnBase
                  {

                  public Indicators.Bottom123 Bottom123(bool show_New_Version, int min_Bars_1_2, int depth_Level_1_2, int retracement_2_3_Perc, int min_Bars_2_3, int min_Bars_Break, bool use_Custom_Lookback_Period, int custom_Lookback_Period, bool show_Price_Target, NinjaTrader.Gui.DashStyleHelper borderStyle, int width, int maxLengthOfLevelLines, bool enableAlert, string alertSoundFile, bool show_Labels)
                  {
                  return indicator.Bottom123(Input, show_New_Version, min_Bars_1_2, depth_Level_1_2, retracement_2_3_Perc, min_Bars_2_3, min_Bars_Break, use_Custom_Lookback_Period, custom_Lookback_Period, show_Price_Target, borderStyle, width, maxLengthOfLevelLines, enableAlert, alertSoundFile, show_Labels);
                  }

                  public Indicators.Top123 Top123(bool show_New_Version, int min_Bars_1_2, int depth_Level_1_2, int retracement_2_3_Perc, int min_Bars_2_3, int min_Bars_Break, bool use_Custom_Lookback_Period, int custom_Lookback_Period, bool show_Price_Target, NinjaTrader.Gui.DashStyleHelper borderStyle, int width, int maxLengthOfLevelLines, bool enableAlert, string alertSoundFile, bool show_Labels)
                  {
                  return indicator.Top123(Input, show_New_Version, min_Bars_1_2, depth_Level_1_2, retracement_2_3_Perc, min_Bars_2_3, min_Bars_Break, use_Custom_Lookback_Period, custom_Lookback_Period, show_Price_Target, borderStyle, width, maxLengthOfLevelLines, enableAlert, alertSoundFile, show_Labels);
                  }



                  public Indicators.Bottom123 Bottom123(ISeries<double&am p;gt; input , bool show_New_Version, int min_Bars_1_2, int depth_Level_1_2, int retracement_2_3_Perc, int min_Bars_2_3, int min_Bars_Break, bool use_Custom_Lookback_Period, int custom_Lookback_Period, bool show_Price_Target, NinjaTrader.Gui.DashStyleHelper borderStyle, int width, int maxLengthOfLevelLines, bool enableAlert, string alertSoundFile, bool show_Labels)
                  {
                  return indicator.Bottom123(input, show_New_Version, min_Bars_1_2, depth_Level_1_2, retracement_2_3_Perc, min_Bars_2_3, min_Bars_Break, use_Custom_Lookback_Period, custom_Lookback_Period, show_Price_Target, borderStyle, width, maxLengthOfLevelLines, enableAlert, alertSoundFile, show_Labels);
                  }

                  public Indicators.Top123 Top123(ISeries<double&g t; input , bool show_New_Version, int min_Bars_1_2, int depth_Level_1_2, int retracement_2_3_Perc, int min_Bars_2_3, int min_Bars_Break, bool use_Custom_Lookback_Period, int custom_Lookback_Period, bool show_Price_Target, NinjaTrader.Gui.DashStyleHelper borderStyle, int width, int maxLengthOfLevelLines, bool enableAlert, string alertSoundFile, bool show_Labels)
                  {
                  return indicator.Top123(input, show_New_Version, min_Bars_1_2, depth_Level_1_2, retracement_2_3_Perc, min_Bars_2_3, min_Bars_Break, use_Custom_Lookback_Period, custom_Lookback_Period, show_Price_Target, borderStyle, width, maxLengthOfLevelLines, enableAlert, alertSoundFile, show_Labels);
                  }

                  }
                  }


                  Comment


                    #10
                    Hello, thanks for writing in. I think the best way to resolve this will be for you to contact me directly through email, then I can log into your PC through TeamViewer to have a look at this compile error. Please write an email to platformsupport at ninjatrader.com and reference "ATTN ChrisL <paste forum link here>" I will then send you instructions on how to launch TeamViewer. I am available today for the next 20 minutes, We might have to schedule a time for tomorrow for me to log in. I am available Mon-Fri 7AM-4PM MST.

                    Kind regards,
                    -ChrisL

                    Comment


                      #11
                      Hello Clayton,

                      I have uploaded another screen shot of the compiler errors. In the Compiler Editor/Indicators/SMA. I selected SMA and changed the name to SMATest. When I compiled the same errors were displayed. It appears it is trying to find a routine or reference called Top_1_2_3 ... and Bottom_1_2_3. It cannot find the routine or reference????

                      The only other 3rd party vendor I have imported to NT8 is BloodHound,

                      Is there a solution to this problem?

                      Thank you Click image for larger version

Name:	Capture Full Screen Snip.png
Views:	297
Size:	265.2 KB
ID:	1229203

                      Tim Walsh

                      Comment


                        #12
                        Hi Tim, the system needs a reference to a DLL that includes Bottom123. You can get to the references list by right clicking the editor>References>Add. If you can recognize the DLL that is needed then add this as a reference.

                        Kind regards,
                        -ChrisL

                        Comment


                          #13
                          Hello Chris L.,

                          Please provide more details about how to: right clicking editor>References>Add. Is this the NT8 Editor? Or, some other editor?

                          Thanks, Tim

                          Comment


                            #14
                            Hi Tim, This is in reference to the NinjaScript Editor. Your previous screen shot with all the compile errors is a screen shot of the NinjaScript Editor. When you right click on this you will see "References".

                            Kind regards,
                            -ChrisL

                            Comment


                              #15
                              Hello ChrisL

                              This was very helpful. I reloaded NT8 update .... .27. I did a Restart. When I invoked NT8. I received the message in attachment 1.
                              I clicked on New NinjaScript>Indicators, I right clicked on the Ninjascript Editor and clicked on References. See attachment 2. Do I need to add all the References listed in the attachment. I look forward to your advice.

                              In the interest of time, is it possible for me to uninstall NT8 OLD Version .25 and Uninstall V ....27, completely delete all NT8 off of my computer and then reinstall, as I am a 1st time user?

                              Also, are there any Windows Dependencies I need to Install?

                              Can I update to Windows 11?

                              Thank you,

                              Best regards,

                              Tim
                              Attached Files

                              Comment

                              Latest Posts

                              Collapse

                              Topics Statistics Last Post
                              Started by argusthome, 03-08-2026, 10:06 AM
                              0 responses
                              110 views
                              0 likes
                              Last Post argusthome  
                              Started by NabilKhattabi, 03-06-2026, 11:18 AM
                              0 responses
                              59 views
                              0 likes
                              Last Post NabilKhattabi  
                              Started by Deep42, 03-06-2026, 12:28 AM
                              0 responses
                              37 views
                              0 likes
                              Last Post Deep42
                              by Deep42
                               
                              Started by TheRealMorford, 03-05-2026, 06:15 PM
                              0 responses
                              41 views
                              0 likes
                              Last Post TheRealMorford  
                              Started by Mindset, 02-28-2026, 06:16 AM
                              0 responses
                              78 views
                              0 likes
                              Last Post Mindset
                              by Mindset
                               
                              Working...
                              X