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

Optimize using list items in enum?

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

    Optimize using list items in enum?

    Recently, I added drop-down list feature using enum to select sides to trade: Long/Short/Both.

    However, when I go into Strategy Analyzer -> Backtest type: Optimization, I only see my defined values in the dropdown, that is Long, Short, Both.

    How can it be done to both 1) keep in drop-down list format and 2) have ability to run optimization test.

    #2
    Hello UnltraNix,

    Thanks for your post.

    Please post your enum code section and the properties section that shows the enum public property.

    Paul H.NinjaTrader Customer Service

    Comment


      #3
      This one?
      public enum SideListF
      {
      Long,
      Short,
      Both,
      }
      And this one?
      [Display(GroupName = "Entry Parameters", Name="Sides To Trade", Description="Enter: Long Only/Short Only/Both")]
      public SideListF SideListV1
      {
      get { return SideListV; }
      set { SideListV = value; }
      }
      both public.

      only private is this, (after public class AI_ADX_Strategy : Strategy)
      private SideListF SideListV = SideListF.Both;
      and Switch part (nested in OnBarUpdate()
      switch (SideListV)
      {
      case SideListF.Long:
      {
      long1 = true;
      short1 = false;
      break;
      }

      case SideListF.Short:
      {
      long1 = false;
      short1 = true;
      break;
      }

      case SideListF.Both:
      {
      long1 = true;
      short1 = true;
      break;
      }

      }
      :

      Comment


        #4
        Hello UltraNIX,

        Thanks for your post.

        For a parameter to be optimized it must have the [NinjaScriptProperty] attribute applied to the property:

        [NinjaScriptProperty]
        [Display(GroupName = "Entry Parameters", Name="Sides To Trade", Description="Enter: Long Only/Short Only/Both")]
        public SideListF SideListV1
        {
        get { return SideListV; }
        set { SideListV = value; }
        }


        Reference: https://ninjatrader.com/support/help...yattribute.htm
        Paul H.NinjaTrader Customer Service

        Comment

        Latest Posts

        Collapse

        Topics Statistics Last Post
        Started by mjairg, 07-20-2023, 11:57 PM
        3 responses
        213 views
        1 like
        Last Post PaulMohn  
        Started by TheWhiteDragon, 01-21-2019, 12:44 PM
        4 responses
        544 views
        0 likes
        Last Post PaulMohn  
        Started by GLFX005, Today, 03:23 AM
        0 responses
        3 views
        0 likes
        Last Post GLFX005
        by GLFX005
         
        Started by XXtrader, Yesterday, 11:30 PM
        2 responses
        12 views
        0 likes
        Last Post XXtrader  
        Started by Waxavi, Today, 02:10 AM
        0 responses
        7 views
        0 likes
        Last Post Waxavi
        by Waxavi
         
        Working...
        X