Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

Can you use a variable in Range in properties?

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

    Can you use a variable in Range in properties?

    [NinjaScriptProperty]
    [Range(1, int.MaxValue)]
    [Display(Name="Swing Strength", Order=1, GroupName="System Settings")]
    public int SwingStrength
    { get; set; }

    [NinjaScriptProperty]
    [Range(SwingStrength, int.MaxValue)]
    [Display(Name="Minimum Pivot Strength", Order=2, GroupName="System Settings")]
    public int MinPivotStrength
    { get; set; }

    as you can see, the value for MinPivotStrength should at least be what the value for Swing Strength is. But this does not work, is there a solution to this for validation?

    #2
    Hello Boonfly8, thanks for your post.

    All items that are inside of an attribute must be known at compile time so any user variables will not work. This kind of validation would need to happen at run time when the strategy first hits State.Historical, See the "CurrentDayOHLC" indicator code for an example on returning from OnBarUpdate if a certain property is not set correctly.

    Kind regards.

    Comment

    Latest Posts

    Collapse

    Topics Statistics Last Post
    Started by CarlTrading, 03-31-2026, 09:41 PM
    1 response
    46 views
    0 likes
    Last Post NinjaTrader_ChelseaB  
    Started by CarlTrading, 04-01-2026, 02:41 AM
    0 responses
    22 views
    0 likes
    Last Post CarlTrading  
    Started by CaptainJack, 03-31-2026, 11:44 PM
    0 responses
    33 views
    1 like
    Last Post CaptainJack  
    Started by CarlTrading, 03-30-2026, 11:51 AM
    0 responses
    50 views
    0 likes
    Last Post CarlTrading  
    Started by CarlTrading, 03-30-2026, 11:48 AM
    0 responses
    42 views
    0 likes
    Last Post CarlTrading  
    Working...
    X