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

[rant] It's time to modernize NinjaTrader. It's slowly killing me.

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

    [rant] It's time to modernize NinjaTrader. It's slowly killing me.

    NinjaTrader desktop is an amazing platform. I have a profitable algo and that wouldn't have been possible without NT. NT allows me to iterate very quickly over code changes and back test and optimize with ease. I'm constantly trying new ideas and even testing manually strategies with it. Ninjascript has it's warts and quirkiness, but all platforms do. Plus C# is an incredible language. I have zero regret over buying the platform and would again, in a heartbeat.

    So, thank you, NT, but for the love of all that is holy, please update your platform.

    Not being able to run netstandard NuGets is becoming a ball and chain around your neck and thus mine. I've been unable to log to a Postgres database, since the new libraries are netstandard. I tried using an older library (v4 instead of v7), but alas, it has a dependency that conflicts with an existing dependency. I had logging to SQLite working, but after trying to get Postgres working and crashing my install of NT, I now don't remember all the nobs and levers I had to adjust to get that working.

    ML.NET? Good luck. netstandard again. I had to create a web service and communicate through that.

    Most modern libraries? Sorry, netstandard.

    Serilog logging to Seq? Forget about it. Your NT will eventually crash and you'll do better at splitting the atom in your basement. Granted, some of the Serilog sinks don't always behave well.

    Interpolated strings? Nope. Still using C# 5!!

    Of the last 40 hours I've spent on my algo, 5 was meaningful exploration of ideas. The other 35 was spent troubleshooting netstandard issues and the curious ways strategy code is loaded and executed in NT.

    I'm ready to take my algos to the next level, but NT isn't letting me. Yes, everything I have mentioned has a work around, but some are time consuming and you don't know you need a work around, at first.

    So, anyone trying to use netstandard libraries, the answer is this: Try it, if you dare, but you'll be better off creating a wrapper web service for everything that is netstandard and calling that web service. Want the latest C#? Suck it up and wait for the upgrade.

    Sorry, for the rant, but this really comes from a place of love (and a bit of frustration after another late night). NT is a truly amazing and I only want it to be more amazing.

    #2
    Hi masilver, we appreciate your feedback I will let our development team know of the trouble you encountered here.
    Chris L.NinjaTrader Customer Service

    Comment


      #3
      NinjaTrader_ChrisL I appreciate the amount of effort you put into responding to these messages. I'm a developer, myself, so I understand the competing interests, the lack of resources, etc. I know these issues may not get resolved anytime soon, but thank you for your reply, regardless.

      Comment


        #4
        NT8 is not the issue per say but .net 4.8 is the real issue.

        but 10000% can relate to that, i have to drag myself to the keyboard with NT8 sometimes as i find it very hard to be motivated with 4.8 framework, as the old C# does suck the life out of you haha... after you've converted to .net core etc.


        I really enjoy .net 6 upwards and work usually with .net 7 if can get away with it and see some 50X faster operations in linq too.
        love working the latest tech for Blazor and .NET MAUI and the C# latest.
        In fact i hate to admit it WPF is almost a joy too in .net Core :-) due to the C# versions...


        With 4.8 i too have to make .net standard to bridge the gap and even marshalling via pipes for IPC but calling WAPI is not too bad, 100% dislike being stuck on xml serialization and newton for sure now MSFT has cured all that.

        Knowing there will be a big code breaking release down the road with NT 9.0 for sure it makes sense to move as much of it as you can outside of NT into libraries or use IPC alongside to prevent redoing it all again.

        1000% would love it if NT used .net 7.. or better.
        but that aint gonna happen .net 6.0 it is i bet if we see it by 2024.
        but are all the dependencies it needs available....?

        I can certainly understand why its very hard to move to the recent tech for the dev team.
        it feels like NT9.net core 6.0 is coming soon thats for sure :-)​ and that will be amazing....
        Last edited by MicroTrends; 03-09-2023, 10:43 AM.
        MicroTrends
        NinjaTrader Ecosystem Vendor - micro-trends.co.uk

        Comment


          #5
          "So, anyone trying to use netstandard libraries, the answer is this: Try it, if you dare, but you'll be better off creating a wrapper web service for everything that is netstandard and calling that web service"

          yes it can be a challenge indeed
          it depends on which version you try to use, but sure it can be done we do it but certainly its limiting -
          definetly we do tend to use WEBAPI a lot to avoid dumping in stacks of files into the NT Bin for one reason
          marshalling we tend to use .net standard to seralize to csv and then binary - and get away from clunky json full verbosity and way from newton

          messaging we would use push to a proxy alognside then ipc into nt8 to stop masses of files again etc..
          ML.Net we woud use seperately in an exe alongside and the file share or pipe the info info to nt8 etc..

          going forwards even if nt9 was .net 6 we would use many of the same patterns but remove the.,net standard
          we would not dump in packages and gazillions of dependencies into the nt bin folder as users dont like ot or understand it and break it.

          but If you are doing it for yourself you can do that side by side and instantiate in memory so much easier...
          MicroTrends
          NinjaTrader Ecosystem Vendor - micro-trends.co.uk

          Comment


            #6
            Again, amongst others, this thread is very relevant: https://ninjatrader.com/support/foru...58#post1178758

            Thanks.
            Multi-Dimensional Managed Trading
            jeronymite
            NinjaTrader Ecosystem Vendor - Mizpah Software

            Comment


              #7
              Thanks for sharing that link, jeronymite, it was an interesting read. I'm going to go the web service route, instead of building v4.8 DLL's. I don't want to deal with the dependencies. I have a server that can house the APIs, and I'm not a HFT, so speed isn't paramount.

              Comment

              Latest Posts

              Collapse

              Topics Statistics Last Post
              Started by rhyminkevin, Today, 04:58 PM
              3 responses
              47 views
              0 likes
              Last Post Anfedport  
              Started by iceman2018, Today, 05:07 PM
              0 responses
              5 views
              0 likes
              Last Post iceman2018  
              Started by lightsun47, Today, 03:51 PM
              0 responses
              7 views
              0 likes
              Last Post lightsun47  
              Started by 00nevest, Today, 02:27 PM
              1 response
              14 views
              0 likes
              Last Post 00nevest  
              Started by futtrader, 04-21-2024, 01:50 AM
              4 responses
              50 views
              0 likes
              Last Post futtrader  
              Working...
              X