> 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.

# AtmStrategy

AtmStrategy contains properties and methods used to manage [ATM Strategies](/developer/desktop-sdk/references/strategy/atm-strategy-methods). When working with an [AtmStrategySelector](/developer/desktop-sdk/references/add-on/controls/atmstrategyselector), selected objects can be case to AtmStrategy to obtain or change their properties.

1. For a complete, working example of this class in use, download framework example located on our [Developing AddOns Overview](/developer/desktop-sdk/guides/educational-resources/addon-development-overview/developing-add-ons)
2. For more information on working with the ATM strategies programmatically in general, please see the [Using ATM Strategies](/developer/desktop-sdk/guides/educational-resources/using-atm-strategies) section.

## Example

```csharp
// Using AtmStrategy to handle user selections in an ATM Strategy Selector
myAtmStrategySelector.SelectionChanged += (o, args) =>
{
   if (myAtmStrategySelector.SelectedItem == null)
       return;
   if (args.AddedItems.Count > 0)
   {
       // Change the selected TIF in a TIF selector based on what is selected in the ATM Strategy Selector
       NinjaTrader.NinjaScript.AtmStrategy selectedAtmStrategy = args.AddedItems[0] as NinjaTrader.NinjaScript.AtmStrategy;
       if (selectedAtmStrategy != null)
       {
           myTifSelector.SelectedTif = selectedAtmStrategy.TimeInForce;
       }
   }
};
```