> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.ninjatrader.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.ninjatrader.com/_mcp/server.

# Creating a user-defined parameter type (enum)

Creating user-defined parameters allows you to present the user with hard coded options they can choose. These options provide flexibility in your indicators and can be of value to the user if they like to switch settings often

## Key concepts in this example

* Hard code various **Moving Average** types the user can select
* Use a switch to determine which code logic is executed based on the **Moving Average** type selected

## Important related documentation

* [enum](http://csharp-station.com/Tutorial/CSharp/Lesson17)
* [branching statements](http://csharp-station.com/Tutorial/CSharp/Lesson03)

## Import instructions

1. Download the file contained in this Help Guide topic to your PC desktop
2. From the Control Center window, select the menu **Tools** > **Import** > **NinjaScript**
3. Select the downloaded file

[SampleUniversalMovingAverage\_NT8.zip](https://ninjatrader.com/support/helpGuides/nt8/samples/SampleUniversalMovingAverage_NT8.zip)