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 thanajo, 05-04-2021, 02:11 AM
        3 responses
        468 views
        0 likes
        Last Post tradingnasdaqprueba  
        Started by Christopher_R, Today, 12:29 AM
        0 responses
        10 views
        0 likes
        Last Post Christopher_R  
        Started by sidlercom80, 10-28-2023, 08:49 AM
        166 responses
        2,236 views
        0 likes
        Last Post sidlercom80  
        Started by thread, Yesterday, 11:58 PM
        0 responses
        4 views
        0 likes
        Last Post thread
        by thread
         
        Started by jclose, Yesterday, 09:37 PM
        0 responses
        9 views
        0 likes
        Last Post jclose
        by jclose
         
        Working...
        X